本来只是个C++程序员,突然要说用C#做一个,虽然C++ Builder也是拖控件,可C#也不一样啊,尽命名空间。
有个sql server的.mdf数据库文件,点“数据”→“添加新数据源”,把这个文件加进来,
然后我又请教另一个人,他说用
using system.data.sqlclient;
然后sqlconection conn = new sqlconnection(str);
这个str是string str = "server=...;database=?";
这个database=什么呀?我仅知道的是.mdf文件的文件名,添加进来的时候也未命名呀!!!!!!
真不知道传说中的“语言是相通”的那些人是怎么做到的,我本来想用windwos api,C#里直接用也用不了。
公司来了个用C#的,根本不会C++ builder,问我几下,交给的任务搞定了,交给我个C#的任务,我困惑好久了。

解决方案 »

  1.   

    database是数据库名,不是数据库文件名。
    看得出阁下对C++也不是很精通
      

  2.   

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.Data.SqlClient;namespace WindowsApplication2
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }        private void Form1_Load(object sender, EventArgs e)
            {
                //连接字符串 服务器名称,登录用户名,登录用户名密码,数据库名称
                String str = ("Server=.;User=sa;PWD=000;DataBase=test");
                SqlConnection con = new SqlConnection(str);
                SqlDataAdapter sda = new SqlDataAdapter("select * from 表 ", con);
                DataSet ds = new DataSet();
                sda.Fill(ds);
                con.Close();
                //下面是拉了个dataGridView空间
                dataGridView1.DataSource = dt;
            }
        }
    }
      

  3.   

    我很郁闷,添加数据源的时候,根本就没有数据库名,
    以前用C++,不管是ODBC还是ADO,总归会让自己命个名的。本来很郁闷,在发这个贴之前,C#专业人事来帮我了,不过搞了近一个小时没搞定,我无语了。看CodeProject上有一段话,说来这里的人都是基于兴趣,不是他们的工作,所以不要论坛里喊。
    阿弥陀佛平静平静
      

  4.   

    就是说这个数据库名,它在哪儿,不是mdf文件的文件名,也没有在添加的时候让我命个名。
    同事找到的方法是不用添加引用(添加引用是交给我任务的人的方法)
    string strConnect = @"Data Source=.\SQLEXPRESS;     AttachDbFilename=C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\ExportRefoundTax.mdf;     Integrated Security=True;     User Instance=True";
    还是不管用
      

  5.   

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Data.SqlClient;
    using System.Data;namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                // "uid=sa":连接数据库的用户名为sa.
                // "password=":连接数据库的验证密码为空.他的别名为"pwd",所以我们可以写为"pwd=".
                // "initial catalog=Northwind":使用的数据源为"Northwind"这个数据库.他的别名为"Database",本句可以写成"Database=Northwind".
                // "Server=YourSQLServer":使用名为"YourSQLServer"的服务器.他的别名为"Data Source","Address","Addr".
                // " Connect Timeout=30":连接超时时间为30秒.(根据情况添加)
                // PS:
                //  1.你的SQL Server必须已经设置了需要用户名和密码来登录,否则不能用这样的方式来登录.如果你的SQL Server设置为Windows登录,那么在这里就不需要使用"uid"和"password"这样的方式来登录,而需要使用"Trusted_Connection=SSPI"来进行登录.
                //  2. 如果使用的是本地数据库且定义了实例名,则可以写为"Server=(local)\实例名";如果是远程服务器,则将"(local)"替换为远程服务器的名称或IP地址.
                string strConnection = "Trusted_Connection=SSPI;";
                strConnection += "database=NTF_Navision_enlistment60;Server=CAIXIATA-6BE823;";
                strConnection += "Connect Timeout=30";
                using (SqlConnection objConnection = new SqlConnection(strConnection))
                {
                    objConnection.Open();
                    // method 1
                    SqlCommand myCommand = new SqlCommand("select * from Couse", objConnection);                Console.WriteLine("open");
                    SqlDataReader myReader = myCommand.ExecuteReader();
                    while (myReader.Read())
                    {
                        Console.WriteLine(myReader.GetFieldType(0));
                        Console.WriteLine(myReader.GetFieldType(1));
                        Console.WriteLine(myReader.GetFieldType(2));
                        Console.WriteLine(myReader.GetDecimal(0));
                        Console.WriteLine(myReader.GetDecimal(1));
                        Console.WriteLine(myReader.GetDecimal(2));
                    }
                    myReader.Close();                // method 2
                    SqlDataAdapter myCommandd = new SqlDataAdapter("select * from Couse", objConnection);
                    DataSet ds = new DataSet();
                    myCommandd.Fill(ds, "Couse");
                    DataTable dt = ds.Tables["couse"];
                    Console.WriteLine(dt.Columns[0].ToString());
                    Console.WriteLine(dt.DefaultView.Count);
                }
            }
        }
    }本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/LCL_data/archive/2009/04/30/4139145.aspx
      

  6.   

    Data Source=.\SQLEXPRESS;AttachDbFilename=E:\TaxRefound\ExportTaxRefund\ExportTaxRefund\ExportRefoundTax.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True
    连好了后直接看数据连接的属性就知道了
      

  7.   

    Data Source=.\SQLEXPRESS;AttachDbFilename=E:\TaxRefound\ExportTaxRefund\ExportTaxRefund\ExportRefoundTax.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True
    连好了后直接看数据连接的属性就知道了