复试准备--ADO.NET数据库

数据库连接字符串

1.String constr="Data Source=.\\SQLEXPRESS;Initial Catalog=mydb;Integrated Security=True";

//.\\SQLEXPRESS:当不是Express版本时直接用.或localhost,表示当地数据库

//Initial Catalog:选择数据库

//Integrated Security:使用集成的Windows验证方式,或者令值为SSPI

2.Sql Server 2005中的Windows身份验证模式如下

string constr = "server=.;database=myschool;uid=sa;pwd=sa";

3.Sql Server 2005中的Sql Server身份验证模式如下:

string constr = "data source=.;initial catalog=myschool;user id=sa;pwd=sa";

有连接方式

SqlConnection连接数据库

SqlConnection con=new SqlConnection(conStr);

con.Open();

...

con.Close():

SqlCommand执行SQL命令

SqlCommand cmd1=new SqlCommand();//不带参数构造

String command="SELECT * FROM TEACHERS";

SqlCommand cmd2=new SqlCommand(command,con);//带参数构造

cmd1.Connection=con;//设置数据库连接

cmd2.CommandText="INSERT INTO TEACHERS VALUES(..)";//设置新的sql命令

cmd2.ExecuteNonQuery();//INSERT  DELETE  UPDATE

         .ExecuteReader();//SELECT,返回SqlDataReader对象

         .ExecuteScalar();//返回标量的查询执行

SqlDataReader读取数据库记录

属性:FieldCount  表示当前行中的列数

           HasRows  表示当前SqlDataReader实例是否包含一行或多行

           IsClosed  表示当前SqlDataReader实例是否关闭

方法:Read()  是当前SqlDataReader实例前进到下一条记录,返回True表示有结果

           NextResult()

           Close()  关闭当前SqlDataReader实例,记得关闭

           GetFieldType(int column)  获取指定列的数据类型的Type,主要column从0开始

           GetName(int column)  获取指定列的名称,注意column从0开始

           GetBoolean、GetChar、GetDateTime、GetDecimal、GetDouble、GetFloat、GetInt16/32/64、GetString

  注意:在不确定记录是否是空值的情况下,通常先通过IsDbNull()方法进行判断,再处理(GetString会异常)

无连接方式

SqlDataAdapter

属性:DeleteCommand  InsertCommand  SelectCommand  UpdateCommand

方法:Fill()--获取数据库数据并填充到本地数据集DataSet或数据表DataTable

           FillSchema()--获取数据库数据架构,填充到本地数据集DataSet或数据表DataTable

           Update()--将本地数据集或数据表更新的数据库

DataSet:关系数据在内存中的表现形式

属性:Tables--包含在DataSet的DataTable的集合

           Relations

方法:HasChanges()

           AcceptChanges()

           RejectChanges()

           Clear()

           CreateDataReader()

DataTable:表示内存数据表

属性:DataSet--所属DataSet

           Columns--列集合

           Rows--行集合

方法:

sqlserver实现mysql 的group_concat(使用stuff函数):

stuff((

SELECT ',' + [value]

FROM temp t

WHERE t.id = temp.id

FOR xml path('')) , 1 , 1 , '')

猜你喜欢

转载自blog.csdn.net/hyhy12580/article/details/88582410