ACCESS程序换成SQL程序出点问题

问题描述

publicstaticobjectExcSqlScalar(stringsqlstr,paramsobject[]param){//System.Data.OleDb.OleDbCommandtmp=ThisConnect.CreateCommand();System.Data.SqlClient.SqlCommandtmp=ThisConnect.CreateCommand();tmp.CommandText=sqlstr;for(inti=0;i<param.Length;i++)tmp.Parameters.Add("param",param[i]);tmp.Transaction=ThisTrans;objectrtn=tmp.ExecuteScalar();tmp.Dispose();returnrtn;}publicstaticintExcSqlNonQuery(stringsqlstr,paramsobject[]param){returnExcSqlNonQuery(sqlstr,System.Data.CommandType.Text,param);}程序以前是ACCESS里,现在改为SQL的,业务类BaseDataBase里的两个方法,窗口代码里调用它们privatevoidbtnSubmit_Click(objectsender,System.EventArgse){objectpw=BaseDataBase.ExcSqlScalar("select用户名fromlogUserwhere用户名=?and密码=?",this.txtUserName.Text,this.txtOldPwd.Text);if(pw==null){MessageBox.Show("旧密码错误!请再次输入!");this.txtOldPwd.Focus();return;}else{if(this.txtNewPwd1.Text!=this.txtNewPwd2.Text){MessageBox.Show("两次输入的密码不一致!请重新输入!");this.txtNewPwd1.Text="";this.txtNewPwd2.Text="";this.txtNewPwd1.Focus();}else{BaseDataBase.ExcSqlNonQuery("updateLogUserset密码=?where用户名=?",this.txtNewPwd1.Text,this.txtUserName.Text);MessageBox.Show("密码修改成功!");this.Close();}}}select用户名fromlogUserwhere用户名=?and密码=?",this.txtUserName.Text,this.txtOldPwd.Text是原来ACCESS的写法,现在我想换成SQL,不是说有参数的SQL语句是怎样写,而是就这个程序而言应该怎样改

解决方案

解决方案二:
求助中~~~
解决方案三:
你具体的问题是什么呢?
解决方案四:
友情顶一下
解决方案五:
现在程序里代码是select用户名fromlogUserwhere用户名=?and密码=?",this.txtUserName.Text,this.txtOldPwd.Text这种写法(连接ACCESS)的,我现在连的是SQL数据库,整个项目也要改成SQL的,现在写法不支持SQL数据库,运行报错为"?"附近有语法错误,就这个项目而言,select用户名fromlogUserwhere用户名=?and密码=?",this.txtUserName.Text,this.txtOldPwd.Text应该怎样改,不是说单纯的SQL语句怎样添加参数,而是就这个程序而言应该怎样改
解决方案六:
select用户名fromlogUserwhere用户名=@uand密码=@p",
解决方案七:
数据库我也改成SQL的了
解决方案八:
"select用户名fromlogUserwhere用户名='"+this.txtUserName.Text+"'and密码='"+this.txtOldPwd.Text+"'"
解决方案九:
也可以用5楼的传参数吧!SqlCommandcmd=newSqlCommand("select用户名fromlogUserwhere用户名=@uand密码=@p",conn);cmd.Parameters.Add("@u",SqlDbType.你要的数据类型);//注意可能会需要转换下的cmd.Parameters["@U"].Value=this.txtUserName.Text;cmd.Parameters.Add("@p",SqlDbType.你要的数据类型);cmd.Parameters["@p"].Value=this.txtOldPwd.Text;
解决方案十:
publicstaticobjectExcSqlScalar(stringsqlstr,SqlParameter[]param){System.Data.SqlClient.SqlCommandtmp=ThisConnect.CreateCommand();tmp.CommandText=sqlstr;if(param.Length!=0){foreach(SqlParameterpinparam)tmp.Parameters.Add(p);}tmp.Transaction=ThisTrans;objectrtn=tmp.ExecuteScalar();tmp.Dispose();returnrtn;}SqlParameter[]param=newSqlParameter[2];param[0]=newSqlParameter("@Name",this.txtUserName.Text);param[1]=newSqlParameter("@Pwd",this.txtOldPwd.Text);objectpw=BaseDataBase.ExcSqlScalar("select用户名fromlogUserwhere用户名=@Nameand密码=@Pwd",param);
解决方案十一:
select用户名fromlogUserwhere用户名=?and密码=?",this.txtUserName.Text,this.txtOldPwd.Text========用string的format格式化一下:String.Format(select用户名fromlogUserwhere用户名={0}and密码={1}",this.txtUserName.Text,this.txtOldPwd.Text)试试看,
解决方案十二:
引用8楼Guyschaos的回复:

SqlCommandcmd=newSqlCommand("select用户名fromlogUserwhere用户名=@uand密码=@p",conn);cmd.Parameters.Add("@u",SqlDbType.你要的数据类型);//注意可能会需要转换下的cmd.Parameters["@U"].Value=this.txtUserName.Text;cmd.Parameters.Add("@p",SqlDbType.你要的数据类型);cmd.Parameters["@p"].Value=this.txtOldPwd.Text;

这样就能实现。。
解决方案十三:
引用8楼Guyschaos的回复:

也可以用5楼的传参数吧!SqlCommandcmd=newSqlCommand("select用户名fromlogUserwhere用户名=@uand密码=@p",conn);cmd.Parameters.Add("@u",SqlDbType.你要的数据类型);//注意可能会需要转换下的cmd.Parameters["@U"].Value=this.txtUserName.Text;cmd.Parameters.Add("@p",SqlDbType.你要的数据类型);cmd.Parameters["@p"].Value=this.txtOldPwd.Text;

时间: 2024-09-17 11:56:12

ACCESS程序换成SQL程序出点问题的相关文章

phonegap-关于PhoneGap将andriod程序打包成IOS程序该怎么做?

问题描述 关于PhoneGap将andriod程序打包成IOS程序该怎么做? PhoneGap将andriod程序打包成IOS程序该怎么做?请知道的朋友给我说下具体步骤.多谢 解决方案 先在mac下搭建phonegap框架,再将js+html5等文件拷贝进去,修改网络连接bug和消息弹窗bug,其他的可能还会有些样式问题

将c#编写的程序打包成应用程序的实现步骤分享(安装,卸载) 图文_C#教程

工具/原料vs2005步骤/方法 新建安装部署项目打开VS,点击新建项目,选择:其他项目类型->安装与部署->安装向导(安装项目也一样),然后点击确定 安装向导关闭后打开安装向导,点击下一步,或者直接点击完成 开始制作 安装向导完成后即可进入项目文件夹:双击"应用程序文件夹"在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件和相应的类库和组件添加进来然后右击你的可执行文件,创建快捷方式,然后把快捷方式分别剪切或复制到左边的"用户的'程序'菜

Windows下用py2exe将Python程序打包成exe程序的教程_python

py2exe在sourceforge 的下载只支持到2.7. 针对python3.0+的版本,需要自己编译.1.下载源码 svn checkout svn://svn.code.sf.net/p/py2exe/svn/trunk py2exe-svn2.编译环境 这里使用的是vs2014.3.安装 进入py2exe-3 python setup.py install 这里会进行编译.安装. 此外,python默认使用的是vs9,针对vs2014,需要改下文件: 复制代码 代码如下: Lib\di

asp.net C# 程序中,如何将MS SQL Server 2000 换成 MS SQL Server 2005,里面应该如何进行修改.

问题描述 原先(MSSQL2000)在连接关键字中的设置:server=localhost;database=HZ;user=sa;pwd=;如果换成MSSQL2005应该怎么进行调整. 解决方案 解决方案二:不需要进行任何修改即可使用解决方案三:server=localhost;database=数据库名称;user=用户名;pwd=密码;解决方案四:不需要调整直接能用吧解决方案五:我这里报了如下的错误:在建立与服务器的连接时出错.在连接到SQLServer2005时,在默认的设置下SQLSe

vc++-在VC++6.0操作access2003程序里换成操作access2007

问题描述 在VC++6.0操作access2003程序里换成操作access2007 用VC和数据库access2003编好的程序中把数据库换成access2007需要修改哪些内容呢?新手求助高手 解决方案 主要是导入新的access类库,然后再编译,有没有错误,再修改 解决方案二: 只要数据源和名称和操作没有变化,就没有太大的变化. 还是你自己调试一下,然后有具体的问题再来提. 解决方案三: 如果用的是oledb的话,只需要更改driver格式就可以了,2000-2003用的是mdb,2007

笔记本换成XP系统后IExplore.exe应用程序错误

笔记本换成XP系统后,单击我的电脑或者别的时候,有时会提示,下面的错误提示: --------------------------- IExplore.exe - 应用程序错误 --------------------------- "0x00a1bdb3" 指令引用的 "0x00000001" 内存.该内存不能为 "read". 要终止程序,请单击"确定". 要调试程序,请单击"取消". --------

这个c++程序如何换成c

问题描述 这个c++程序如何换成c 5C #include #include using namespace std;class Data{public:Data();Data(int istring nint b);void SetId(int i);void SetName(string n);void SetBorrow(int b);int GetId()const;string GetName()const;int GetBorrow()const;private:int id;str

vs2010开发的窗体程序 数据库使用access如何打包成安装文件

问题描述 vs2010开发的窗体程序数据库使用access如何打包成安装文件,我尝试了多次但是都是不成功,求大神文档 解决方案 解决方案二: 解决方案三:引用1楼guwei4037的回复:access数据库直接加在到里面就可以了是吗?解决方案四:access不是直接一个文件就行了嘛

C++怎么做出有界面的应用程序,如何把程序背景换成灰色?

问题描述 C++怎么做出有界面的应用程序,如何把程序背景换成灰色? C++怎么做出有界面的应用程序,如何把程序背景换成灰色? 解决方案 http://blog.csdn.net/Dreamfine/article/details/24543237