20110303写代码收获小记

来源:互联网 发布:古代士兵装备知乎 编辑:程序博客网 时间:2024/04/28 08:31

在数据库中为某个表添加记录

 

1.发现需要添加字段,只好将原来的表删除,但是该表被很多表引用,所以只好先删那些子表,再删除该主表,很痛苦.

 

结论:数据库设计要考虑得周到些.重要表肯定需要记录用户ID和操作时间,必要的唯一约束也要加上.

写好.sql文件,将删除表的语句按顺序写好,建立表的语句也按顺序写好.

 

2.将系统日期插入oracle数据库.数据格式转换要注意.

 

系统日期---string

考察oracle服务器的date-format,根据这个格式将字符串中的上午/下午改成AM/PM,然后

 

在代码中嵌入

                conn.Open();
                com = new OracleCommand("alter session set NLS_DATE_LANGUAGE = 'AMERICAN'", conn);
                com.ExecuteNonQuery();

 

然后在oraclecommand中的命令行语句中使用to_date转换日期再插入Oracle。

 

3.添加一个Exception窗体,该窗体也可以用做程序开发中的测试窗体.

 

4.窗体之间传参,可以使用构造函数,虽然不优雅,但传递少量参数时,实现简单,也可以用委托,这个,有时间再看看.

 

5.使用oracleclient方式访问远程oracle服务器,建立连接的字符串为

 

OracleConnection conn = new OracleConnection("user id=连接数据库的用户名;password=密码;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=服务器IP)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=实例名)));");

 

6。在oracle中实现自增长的方式

 

建立一个sequence

 

create sequence R7005_seq_1 increment by 1 start with 1;

 

然后将该sequence用于某个表的某个字段。

 

通过sql语句向oracle数据库中插入主键时,不能直接写主键值,而应该通过序列得到下个主键值。

如:向表Demo中插入一条数据,ID为主键,序列为Demo_Seq

insert into Demo(ID,NAME,AGE)values(52,’wang’,20)是错误的。正确的写法为insert into Demo(ID,NAME,AGE)values(Demo_Seq.nextval,’wang’,20)

原创粉丝点击