我用菜单栏的工具菜单连接到创建的SQL Server数据库,但是调用时出错是用户**没有登录数据库。请帮助一下。我写的代码是:
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 _520 { public partial class Form1 : Form { string conStr = "Data Source=SQLServer2005;Initial Catalog=master;Integrated Security=True";//连接字符串 public Form1() { InitializeComponent(); }
private void button1_Click(object sender, EventArgs e) {
SqlConnection conn = new SqlConnection(conStr);
string sql = "select userID,password from user_tab where userID='" + this.textBox1.Text + "' and password='" + this.textBox2.Text + "' "; SqlCommand comm = new SqlCommand(sql,conn); conn.Open(); SqlDataReader myreader = comm.ExecuteReader();
if (myreader.Read()) { MessageBox.Show("成功", "提示"); } }
private void Form1_Load(object sender, EventArgs e) {
} } }
private void Button_Click(object sender, EventArgs e)
{
string conStr = "Data Source=.;Initial Catalog=r;Integrated Security=True";
SqlConnection conn = new SqlConnection(conStr);
string sql = @"select userID,password from user_tab where userID='" + this.TextBox1.Text
+ "' and password='" + this.TextBox2.Text + "' ";
SqlCommand comm = new SqlCommand(sql, conn);
conn.Open();
SqlDataReader myreader = comm.ExecuteReader();
if (myreader.Read())
{
MessageBox.Show("成功", "提示");
}
}
Data Source=.:这样省的写错
Initial Catalog=r;r为数据库的名字
Integrated Security=True";Windows身份登录,如果是权限登录:User ID=用户名;Password=密码
连接串问题!
请问一下你用的是vs 2010和SQL 2008吗?能否给个例子,就是简单的验证登录。
没用过10的,以我08的浅薄见识看,连接字符串里面好像少点什么,登录账号密码........
sql2005数据库的连接字符串如下:
Server=服务器地址(你的机器名或你的IP,要是本机的话可以写127.0.0.1或localhost);Database=库名;Uid=数据库登录名;Pwd=数据库登录密码;
如果使用的是SQL Server 2005 Express, 请修改上面的“Server”,使其如下:
Server=服务器地址(你的机器名或你的IP,要是本机的话可以写127.0.0.1或localhost)\SQLEXPRESS;Database=库名;Uid=数据库登录名;Pwd=数据库登录密码;
是sql2008的,唉,这个该怎么整?看来只得用05的?
@红太子: 2005和2008的没什么区别啊。
你可以这样获取数据库的那个字符串。点击vs上的“工具”
再点击:“连接到数据库”看到如图所示:
选择你所用的数据库,在点击“继续”按钮。点击“服务器名”下拉框,选择你所用的服务器名。如果用sqlserver身份验证,输入用户名和密码,如果windows身份验证就不需要,操作完了就直接点击确定,在vs的左边会看到,再看他的属性,会有一个字符串,这个就是你所要的登录字符串。
教你一个简单的办法
找到你想链接的数据库右击属性
如图:
然后再属性对话中找到一个链接字符串属性,如图:
后面的字符串就是我们要链接的字符串,但是要稍作一些修改
Data Source=.\SQLEXPRESS;AttachDbFilename="c:\documents and settings\administrator\my documents\visual studio 2010\Projects\HelpOthers\HelpOthers\Database1.mdf";Integrated Security=True;User Instance=True
吧AttachDbFilename改为AttachDbFilename=|DataDirectory|\Database1.mdf
最后的链接字符串为Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True
希望对楼主有帮助 ……
Integrated Security=True 换成[uid=用户名(如sa); pwd='你的密码';]
string conStr = "Data Source=SQLServer2005;Initial Catalog=master;Integrated Security=True";//连接字符串
Integrated Security=True表示使用windows认证,即以windows当前登录用户去登录数据库。
换一个有权限的用户并按照楼上的修改就可以了。
我一般写在appconfig中,然后在form页中读取ConfigurationManager.AppSettings["ConnectionString"]
如:<add key="ConnectionString" value="server=127.0.0.1;database=FollowerDB;Integrated Security=True;" />
连接字符窜的问题