?? sqlce_examp.txt
字號:
智能設(shè)備擴展
代碼列表:使用 SQL Server CE 數(shù)據(jù)庫請參見
演練:使用 SQL Server CE 數(shù)據(jù)庫 | SQL Server CE | 智能設(shè)備演練
以下是執(zhí)行演練中包含的所有任務(wù)的完整 Visual C# 代碼??梢栽?Microsoft Visual Studio .NET 項目中復制、粘貼并運行這段代碼。
using System;
using System.IO;
using System.Text;
using System.Data;
using System.Data.SqlServerCe;
using System.Collections;
using System.Windows.Forms;
using System.Data.Common;
public class WalkThrough
{
static void Main()
{
SqlCeConnection conn = null;
try
{
if (File.Exists ("Test.sdf") )
File.Delete ("Test.sdf");
SqlCeEngine engine = new SqlCeEngine ("Data Source = Test.sdf");
engine.CreateDatabase ();
conn = new SqlCeConnection ("Data Source = Test.sdf");
conn.Open();
SqlCeCommand cmd = conn.CreateCommand ();
cmd.CommandText =
"CREATE TABLE TestTbl (col1 INT PRIMARY KEY, col2 NTEXT, col3 MONEY)";
cmd.ExecuteNonQuery();
cmd.CommandText =
"INSERT INTO TestTbl (col1, col2, col3) VALUES (0, 'abc', 15.66)";
cmd.ExecuteNonQuery();
cmd.CommandText = "INSERT INTO TestTbl (col1, col2, col3) VALUES (?, ?, ?)";
cmd.Parameters.Add(new SqlCeParameter("p1", SqlDbType.Int));
cmd.Parameters.Add(new SqlCeParameter("p2", SqlDbType.NText));
cmd.Parameters.Add(new SqlCeParameter("p3", SqlDbType.Money));
cmd.Parameters["p2"].Size = 50;
cmd.Prepare();
cmd.Parameters["p1"].Value = 1;
cmd.Parameters["p2"].Value = "abc";
cmd.Parameters["p3"].Value = 15.66;
cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
cmd.CommandText = "SELECT * FROM TestTbl";
SqlCeDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
MessageBox.Show(" col1 = " + rdr.GetInt32(0) +
" col2 = " + rdr.GetString(1) +
" col3 = " + rdr.GetSqlMoney(2));
}
cmd.CommandText = "UPDATE TestTbl set col2='some new value' WHERE col1=0";
cmd.ExecuteNonQuery();
cmd.CommandText = "SELECT * FROM TestTbl";
rdr = cmd.ExecuteReader();
while (rdr.Read())
{
MessageBox.Show(" col1 = " + rdr.GetInt32(0) +
" col2 = " + rdr.GetString(1) +
" col3 = " + rdr.GetSqlMoney(2));
}
}
catch (SqlCeException e)
{
ShowErrors(e);
}
finally
{
if(conn.State == ConnectionState.Open)
conn.Close();
}
}
public static void ShowErrors(SqlCeException e)
{
SqlCeErrorCollection errorCollection = e.Errors;
StringBuilder bld = new StringBuilder();
foreach (SqlCeError err in errorCollection)
{
bld.Append("\n Error Code: " + err.HResult.ToString("X"));
bld.Append("\n Message : " + err.Message);
bld.Append("\n Minor Err.: " + err.NativeError);
bld.Append("\n Source : " + err.Source);
foreach (int numPar in err.NumericErrorParameters)
{
if (0 != numPar) bld.Append("\n Num. Par. : " + numPar);
}
foreach (string errPar in err.ErrorParameters)
{
if (String.Empty != errPar) bld.Append("\n Err. Par. : " + errPar);
}
MessageBox.Show(bld.ToString());
bld.Remove(0, bld.Length);
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -