ข้อความต้นฉบับ: http://aspalliance.com/articleViewer.aspx?aId=477&pId=-1
ผู้แต่ง: Andrew Mooney การแปล: Mencius บทที่ E [ดาวน์โหลดซอร์สโค้ด
// ตรวจสอบว่ามีตารางอยู่หรือไม่ หากมีจะมีการบันทึกใน DataTable
ถ้า(schemaTable.Rows.Count < 1)
sqlCmd = "สร้างตาราง" + tableName + " (";
สำหรับ(int i = 0;i < dataTableXml.Columns.Count;i++)
-
//เพิ่มข้อความคอลัมน์/ประเภทสตริงความยาว 100
sqlCmd = sqlCmd + dataTableXml.Columns[i].ColumnName.ToString() + " ถ่าน(100),";
-
sqlCmd = sqlCmd .Substring(0,sqlCmd.Length - 1) + ");";
OleDbCommand oledbCmd = ใหม่ OleDbCommand(sqlCmd,oledbConn);
oledbCmd.ExecuteNonQuery();
เพิ่มข้อมูล XML ลงในฐานข้อมูล
// สำรวจแถวใน DataTable
foreach (DataRow dr ใน dataTableXml.Rows)
-
string sqlCmd = "ใส่เข้าไปใน [" + tableName + "] (";
// สำรวจคอลัมน์ของ Datatable
สำหรับ(int i = 0;i < dataTableXml.Columns.Count;i++)
-
//เพิ่มชื่อคอลัมน์
sqlCmd = sqlCmd + dataTableXml.Columns[i].ColumnName.ToString() + ",";
-
sqlCmd = sqlCmd.Substring(0,sqlCmd.Length - 1) + ") ค่า (";
// สำรวจคอลัมน์ DataTable
สำหรับ(int x = 0;x < dataTableXml.Columns.Count;x++)
-
//เพิ่มค่าคอลัมน์ให้กับแถว
sqlCmd = sqlCmd + "'" + dr[x].ToString().แทนที่("'","''") + "',";
-
sqlCmd = sqlCmd.Substring(0,sqlCmd.Length - 1) + ");";
OleDbCommand oledbCmd = ใหม่ OleDbCommand(sqlCmd,oledbConn);
oledbCmd.ExecuteNonQuery();
-
ประเด็นที่ควรทราบ:
เมื่อทำการทดสอบ ก่อนอื่นให้ดาวน์โหลดซอร์สโค้ด สร้างฐานข้อมูลเปล่า ตั้งค่าสิทธิ์ที่แก้ไขได้ Database.mdb, Database.xls และสร้าง
ตัวอย่างสตริงการเชื่อมต่อไดเร็กทอรีว่างสำหรับ FoxPro/dBase:
การเข้าถึง: ผู้ให้บริการ=Microsoft.Jet.OLEDB.4.0;แหล่งข้อมูล=C:datadatabase.mdb;
Excel: ผู้ให้บริการ=Microsoft.Jet.OLEDB.4.0;แหล่งข้อมูล=C:datadatabase.xls;คุณสมบัติเพิ่มเติม=Excel 8.0;
FoxPro/dBase: ผู้ให้บริการ=Microsoft.Jet.OLEDB.4.0;แหล่งข้อมูล=c:data;คุณสมบัติเพิ่มเติม=dBASE IV;
เซิร์ฟเวอร์ SQL: ผู้ให้บริการ=SQLOLEDB; แหล่งข้อมูล=localhost; แค็ตตาล็อกเริ่มต้น=ฐานข้อมูล;รหัสผู้ใช้=sa;รหัสผ่าน=;