C#操作SqlServer資料庫

來源:互聯網
上載者:User

前幾天剛拿到畢業證,昨天開始到公司報到,又開始了上班生涯啊。幾多歡喜幾多愁。從今以後,就再也不是一個學生啦,唉,好好工作吧。

今天經理要我寫個小程式把文字檔裡面的資料匯入資料庫裡面,因為資料量比較大,只能寫程式往裡面讀啦.

因為涉及到操作SQLServer資料庫,以往沒用過,現在來試一下。給大家分享一下.

using System.Data.SqlClient;

需要引入這個命名空間.

以下是怎樣串連資料庫及建立表

string connString = "server=192.168.1.85;database=橋樑監測;uid=sa;pwd=123456";            SqlConnection sqlConnection = new SqlConnection(connString);            sqlConnection.Open();            string sql = "CREATE TABLE s4" +                "(GPSIndex bigint primary key,aDatetime datetime,X float,Y float,Height float,"                + "dltaX float,dltaY float,dltaH float)";            SqlCommand cmd = new SqlCommand(sql, sqlConnection);            cmd.ExecuteNonQuery();

server 對應的是資料庫的ip地址,以後大家要串連SqlServer資料庫,都可以照這樣來。

     FileStream aFile = new FileStream("Station_8008_Ay.txt", FileMode.Open);            StreamReader sr = new StreamReader(aFile);            strLine = sr.ReadLine();             while (strLine != null)            {                string[] str = strLine.Split(' ');                int i = 0;              //  double X1 = 0, Y1 = 0;//如果資料超長就得選用double                 float X1 = 0, Y1 = 0;                float Height1=0;                foreach (string strtest in str)                {                                        if (strtest.Trim() != "")//Trim()去除字串頭部和尾部的空格部分                    {                                       if (i > 1)                        {                            if (i == 2)                            { X1 = float.Parse(strtest);  }                            if (i == 3)                            { Y1 = float.Parse(strtest); }                            if (i == 4)                            { Height1 = float.Parse(strtest); }                        }                        i++;                    }                }

 

上面也是我今天寫的代碼,從這次動手中,學到了許多,希望多積累一下

  string.Trim()函數很有用,可以去掉字串頭部和尾部的空格部分,在與資料庫操作相關的地方,必須要求字串很精細,一點馬虎不得,所以這個函數就很有用。

 

                DateTime dt = System.DateTime.Now;                Int64 milliseconds = (Int64)(System.DateTime.Now - new DateTime(1970, 1, 1)).TotalMilliseconds + System.DateTime.Now.Millisecond;                string sql1 = "INSERT INTO s4(GPSIndex,aDatetime,X,Y,Height,dltaX,dltaY,dltaH)"                    + "VALUES(" + milliseconds.ToString()                    + "," + "'" + dt.ToString("yyyy-MM-dd hh:mm:ss")                    +"'"                     + ","                     + X1.ToString()                    +","                    +Y1.ToString()                    +","+Height1.ToString()                    +",0,0,0)";              //MessageBox.Show(sql1);                cmd = new SqlCommand(sql1, sqlConnection);                cmd.ExecuteNonQuery();                strLine = sr.ReadLine();                Thread.Sleep(1000);            }

 

在插入時間的時候,千萬直接這樣-- dt.toStirng() 這樣肯定報錯,這樣資料庫無法將 字串轉化為datetime類型

我是在我旁邊一位來公司幾年的同事的協助下才把這個問題解決的。

對了,另外字元類型的要加單引號,這個地方很容易出錯

csdn 不給力啊,寫個部落格麻煩死啦,代碼不知道怎麼顯示不了,坑爹得很,以後去部落格園得了.

 

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.