积极答复者
winform 如何连接添加新建项里添加的本地数据库

问题
-
假设数据库的名字是db,表名是table,其他都没有设置的
- 已移动 Sheng Jiang 蒋晟Moderator 2009年6月29日 16:20 移动开发 (发件人:Visual C#)
答案
-
您好!我成功读取了你的数据库,现在将代码给你。
using System.Data.SqlServerCe;//需要添加引用。
string strConnection = "Data Source=D:\\db.sdf";
string select = "SELECT [table].* FROM [table]";
SqlCeConnection objConnection = new SqlCeConnection(strConnection);
objConnection.Open();SqlCeDataAdapter adapter = new SqlCeDataAdapter(select,strConnection);
DataSet ds = new DataSet();
adapter.Fill(ds,"table");
dataGridView1.DataSource = ds.Tables[0];
好了,睡觉去了!
♡. Microsoft .NET Platform- 已标记为答案 ww-air 2009年6月30日 0:34
全部回复
-
是在项目中添加数据库(解决方案资源管理器中),不是在SQLSERVER中新建数据库然后连接,所以是没有登录名密码之类的,就是类似你上面的代码我试过,运行后是没有任何反应的,下面是我的代码,运行后不报错,也没任何反应,连form窗体都不显示。
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; namespace localdb { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { string sql = "select * from table"; //数据库连接 SqlConnection con = new SqlConnection("Data Source=|DataDirectory|\\db.sdf"); con.Open(); //跟数据库交互 SqlCommand cmd = new SqlCommand(sql, con); //数据适配器 SqlDataAdapter sda = new SqlDataAdapter(cmd); DataSet ds = new DataSet(); sda.Fill(ds); dataGridView1.DataSource = ds.Tables[0]; con.Close(); } } }
-
运行了Provider=Microsoft.SQLSERVER.MOBILE.OLEDB.3.0;Data Source=myPath\myData.sdf; 之后
错误提示“不支持provider”
运行了
SqlConnection conn = new SqlConnection(
" uid=sa;pwd=passwords;initial catalog=pubs;data source=127.0.0.1;Connect Timeout=900");
之后还是不显示form
关键是按我建立数据库的方法,建立的时候并没有要求输入登录名和密码,所以我把uid之类的删掉了,但还是没有显示form
再试一下,vs中,解决方案资源管理器中,右键添加新建项,添加的本地数据库,然后建立一个表,输入一些数据,然后连接看看 -
请给出你的数据库具体情况是sdf还是MDF
string strConnection ="Data Source=你服务器的名字;Initial Catalog=数据库名;Integrated Security=True";
SqlConnection objConnection = new SqlConnection(strConnection);
string select = "select * from 你的表名";
objConnection.Open();DataSet ds = new DataSet();
SqlDataAdapter adapter = new SqlDataAdapter(select,objConnection);
adapter.Fill(ds, "你的表名");
dataGridView1.DataSource = ds.Tables[0];
♡. Microsoft .NET Platform -
数据库是db.sdf
错误提示:
在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
我代码中的服务器是在“服务器资源管理器”找的名字,把Data Source=WIN-GQ6TAG2S77T;删掉或改local都有同样的错误提示
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; namespace localdb { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { string strConnection = "Data Source=WIN-GQ6TAG2S77T;Initial Catalog=db.sdf;Integrated Security=True"; string select = "select * from table"; SqlConnection objConnection = new SqlConnection(strConnection); objConnection.Open(); SqlDataAdapter adapter = new SqlDataAdapter(select, objConnection); DataSet ds = new DataSet(); adapter.Fill(ds); dataGridView1.DataSource = ds.Tables[0]; } } }
-
你直接用数据库连接控件连接一下,再看看web.config里面他是怎么写的不就知道了吗
我的博客,最近新写了一个Windows Mobile 6.5 Widget开发的文章,欢迎捧场
尽力回答每一个问题,但不代表一定正确,希望初学者能够多自己尝试。。共勉。。:) -
您好!我成功读取了你的数据库,现在将代码给你。
using System.Data.SqlServerCe;//需要添加引用。
string strConnection = "Data Source=D:\\db.sdf";
string select = "SELECT [table].* FROM [table]";
SqlCeConnection objConnection = new SqlCeConnection(strConnection);
objConnection.Open();SqlCeDataAdapter adapter = new SqlCeDataAdapter(select,strConnection);
DataSet ds = new DataSet();
adapter.Fill(ds,"table");
dataGridView1.DataSource = ds.Tables[0];
好了,睡觉去了!
♡. Microsoft .NET Platform- 已标记为答案 ww-air 2009年6月30日 0:34