Proc *C/C++入门之常用嵌入式SQL语句
2017-01-11 23:13
363 查看
事务控制语句
Commit, rollback and savepoint. EXEC SQL commit; EXEC SQL commit work release; EXEC SQL rollback work release;
数据定义语句(DDL)
create, alter, drop
EXEC SQL CREAT TABLE t1(cola int); EXEC SQL DROP TABLE t1; EXEC SQL ALTER TABLE t1 add(faxno number);
注意:对象名, 列名不能用宿主变量.`
自动提交事务
Alter: alter table emp add( faxno number ); Analyze: analyze table
数据操作语句(DML)
EXEC SQL Select …….; EXEC SQL Insert …….; EXEC SQL update …….; EXEC SQL Delete …….;
用单个变量操作单行单列
char ename[35]; int empno=20; EXEC SQL select emp_name INTO :ename from emp where emp_no=:empno; cout<<“the name is “<< ename;
注意:
字符串长度定义
指示变量的运用
用多个变量操作单行多列
变量顺序与字段名一至char v_name[31], char v_job[21]; float v_salary; int empno=20; EXEC SQL select emp_name,job,salary INTO :v_name,:v_job,:v_salary FROM emp WHERE emp_no=:empno; cout<<v_name<< v_job<<v_salary;
用结构(struct )操作单行多列
宿主结构是指包含多个宿主变量的C语言结构,以此可简化单行多列操作。Struct{ int no; char name[10]; int salary; }emp_record;
输入:
EXEC SQL INSERT INTO emp(empno,ename,sal) VALUES (:emp_record);
输出:
EXEC SQL SELECT empno,ename,sal INTO :emp_record WHERE rownum=1;
注意:
1.可用结构pointer,但要分配空间。
2.结构成员的数据类型,顺序必须与SQL语句一至。
3.不能用嵌套的结构。
4.不能用C联合(UNION)
Struct{ int no; char name[10]; int salary; }*emp_record; emp_record = (struct emp_record *)malloc(sizeof(struct emp_record )); EXEC SQL SELECT empno,ename,sal INTO :emp_record WHERE rownum=1;
用数组(array)操作多行多列
为了降低网络开销,提高程序性能。数组和 INSERT 语句
int num[100]; float salary[100]; char name[100][25]; /** 在此为ARRAY赋值 **/ EXEC SQL INSERT INTO emp(empno,ename,sal) VALUES (:num, :name, :salary);
数组和 UPDATE / DELETE 语句
Char name[100]; float salary[100]; …….. /** 在此为ARRAY赋值 **/ EXEC SQL UPDATE EMP SET sal=:salary WHERE ename=:name; Char name[100]; …….. /** 在此为ARRAY赋值 **/ EXEC SQL DELETE FROM emp WHERE ename=:name;
数组和 SELECT 语句
Char name[100][25]; EXEC SQL SELECT ename INTO :name FROM emp WHERE dept_num=2; For(int j=0;j<sqlca.sqlerrd[2];j++) cout<<“Emp_name”<<name[j]<<endl;
注意事项:
1.只有CHAR 和 ARCHAR 可为二维数组。
2.如数组INDEX不同,按最小操作。
3.在SELECT语句的WHERE子句中,不能用数组。
4.数组元素最大值:32767
相关文章推荐
- Oracle 入门基础,Oracle常用Sql语句
- Proc *C/C++入门之动态SQL
- 数据库之Oracle的使用【入门版,包括常用的Sql语句】
- MySql数据库快速入门与常用sql语句
- DBA常用的SQL语句
- oracle常用sql查询语句部分集合(图文)
- 常用SQL语句书写技巧[转]
- 常用SQL语句(绝对原创)
- DBA常用sql语句-查询表空间大小语句
- 常用的SQL语句及存储过程
- SQL 注入有常用语句
- 简单却常用的一个SQL功能:1句SQL语句返回多个字段值到指定变量
- 常用Sql语句
- 常用SQL语句
- SQL 注入有常用语句
- SQL Server 数据库管理常用的SQL和T-SQL语句
- Oracle维护常用SQL语句
- 常用SQL语句详解
- 常用SQL语句(原创,以sqlServer为基础)
- 常用的sql语句及存储过程