2009-09-28 19 views
48

मैं एक नई SQL सर्वर कॉम्पैक्ट डेटाबेस फ़ाइल (.sdf) प्रोग्रामेटिक रूप से कैसे बना सकता हूं, बिना किसी मौजूदा टेम्पलेट फ़ाइल को कॉपी करने के लिए?SQL सर्वर सीई डेटाबेस फ़ाइल प्रोग्रामेटिक रूप से

उत्तर

71

यहाँ कुछ अच्छी जानकारी है: Create a SQL Server Compact Edition Database with C#

string connectionString = "DataSource=\"test.sdf\"; Password=\"mypassword\""; 
SqlCeEngine en = new SqlCeEngine(connectionString); 
en.CreateDatabase(); 
+20

हैरानी की बात है, बनाने 0-बाइट फ़ाइल काफी अच्छा है एसक्यूएल सीई रूप में यह इलाज शुरू करने के लिए एक डेटाबेस यह उन समय के लिए उपयोगी होता है जब आप 'Path.GetTempFileName()' का उपयोग करना चाहते हैं, जो आपके लिए 0-बाइट फ़ाइल बनाता है। – Phil

+2

@ फिल नाइस ढूंढें। – RedFilter

+0

डेटासोर्स को डबल कोट्स से घिरा होना चाहिए। दूसरी ओर, पासवर्ड एकल उद्धरण से घिरा होना चाहिए। –

7

पहले, ब्राउज़ करें टैब पर क्लिक करें जाओ। अब पर नेविगेट करें। अब System.Dadta.SqlServerCe.dll चुनें, उस पर क्लिक करें, फिर संदर्भ में खींचने के लिए ठीक पर क्लिक करें।

अब कुछ कोड लिखें। सबसे पहले, कक्षा के सिर पर जाएं, जिसका अर्थ है कि मैं आपकी कक्षा का शीर्षलेख हूं और चलिए एक प्रयोग संदर्भ बनाते हैं।

using System.Data.SqlServerCe; 
using System.IO; 

    string connectionString; 
    string fileName = "aminescm.sdf"; 
    string password = “aminescm”; 

    if (File.Exists(fileName)) 
    { 
    File.Delete(fileName); 
    } 

    connectionString = string.Format(
    "DataSource=\"{0}\"; Password='{1}'", fileName, password); 
    SqlCeEngine en = new SqlCeEngine(connectionString); 
    en.CreateDatabase(); 

आप इस के बारे में अधिक से अधिक प्राप्त कर सकते हैं, यह वास्तव में एक अद्भुत वेब साइट है:

http://arcanecode.com/arcane-lessons/

+3

"CreateDatabase विधि का उपयोग करें" कहने का एक बहुत लंबा तरीका ... –

+1

अब आप स्थानीय असेंबली के संदर्भ में एसक्लसी के लिए NuGet पैकेज में संदर्भ जोड़ सकते हैं। – Kilhoffer

संबंधित मुद्दे