数据库不难 只学增删改查 最多分钟就能掌握
select from 表 where 字段 = 条件 这个是查询 这个表里面所有内容 加上where 就是根据条件查寻了
insert into 表(里面是字段可以不写 不写就默认是插入所有) values (对应字段进行添加)
update 表 set 字段 where 字段 = 条件
delete from 表 where 字段 = 条件
drop table 表 删除整个表
第一个删除只能删除数据
第二个删除可以彻底删除整个表
先下载ADONET20 Provider for SQLite。下载binaries zip版就可以了。下载完后解压缩,可以在bin目录下找到SystemDataSQLiteDLL。在vs2008中用Add Reference功能把SystemDataSQLiteDLL加到工程里就可以了。运行下面代码试试:
string datasource = "e:/tmp/testdb";
SystemDataSQLiteSQLiteConnectionCreateFile(datasource);
//连接数据库
SystemDataSQLiteSQLiteConnection conn = new SystemDataSQLiteSQLiteConnection();
SystemDataSQLiteSQLiteConnectionStringBuilder connstr = new SystemDataSQLiteSQLiteConnectionStringBuilder();
connstrDataSource = datasource;
connstrPassword = "admin";//设置密码,SQLite ADONET实现了数据库密码保护
connConnectionString = connstrToString();
connOpen();
//创建表
SystemDataSQLiteSQLiteCommand cmd = new SystemDataSQLiteSQLiteCommand();
string sql = "CREATE TABLE test(username varchar(20),password varchar(20))";
cmdCommandText = sql;
cmdConnection = conn;
cmdExecuteNonQuery();
//插入数据
sql = "INSERT INTO test VALUES('a','b')";
cmdCommandText = sql;
cmdExecuteNonQuery();
//取出数据
sql = "SELECT FROM test";
cmdCommandText = sql;
SystemDataSQLiteSQLiteDataReader reader = cmdExecuteReader();
StringBuilder sb = new StringBuilder();
while (readerRead())
{
sbAppend("username:")Append(readerGetString(0))Append("\n")
Append("password:")Append(readerGetString(1));
}
MessageBoxShow(sbToString());
字段说明:
用户的id 假设是 uid
要修改的内容是 content
sql语句:
update 表名 set content='修改后的内容' where uid='你传过来的用户id';
但这样的话,表的设计肯定是有问题的。
一般一个用户可以对应多个内容,所以这样的话就会修改该用户的多个内容,应该还需要一个内容的唯一 id,一般会有一个 id 字段,主键自增。
这样修改的时候的 where 条件应该至少有两个:id 和 uid
id 是为了保证只修改到一条内容,且是指定的内容;
uid 是为了保证该内容是同一个创作的(当然前端直接传 uid 是不安全的,应该通过 session 和 token 后端再转成用户的 uid)
import javasql;
public class Main
{
public static void main(String[] args) throws ClassNotFoundException {
Connection con;
Statement sql;
ResultSet rs;
con = null;
try {
String ur1="jdbc:odbc:Driver={Microsoft Access Driver (mdb)};DBQ=C:/myfile/qfcmdb";
ClassforName("sunjdbcodbcJdbcOdbcDriver");
con = DriverManagergetConnection(ur1);
sql= concreateStatement(ResultSetTYPE_SCROLL_INSENSITIVE,ResultSetCONCUR_UPDATABLE);
rs = sqlexecuteQuery("select from 设备号'");
//这里是查询语句,如果需要做CRUD,换成对应的sql语句就行了。
while (rsnext()) {
String user = rsgetString("设备号");
Systemoutprintln(user);
}
} catch (Exception e) {
Systemoutprintln("sql出错:");
Systemoutprintln(e);
}
}
}
// 定义接口 public interface SyUsersService {
/新增用户/
public void addSyUser(SyUsers syUsers);
/根据用户名得到用的注册信息/
public SyLeaguer isRightPasswordProtect(SyLeaguer syLeaguer);
/更新用户的密码/
public void updateSyUserPassword(SyUsers syUsers);
/用户登录验证/
public boolean checkSyUserLogin(SyUsers syUsers);
/
更新用户状态 @param loginName 登录名 @param state 状态号 0/1
@return 是否更新成功 true/flase
/
public boolean updateSyUserState(String loginName,Integer state);
/
分页查询用户信息
@param pageNo 页号
@param pageSize 页面大小
@param hqlQueryRule 查询规则
@return Page 分页查询对象
/
public Page querySyUserPage(int pageNo,int pageSize,HqlQueryRule hqlQueryRule);
/
更新用户密码
@param loginName 登录名 @param oldPassword 旧的密码
@param newPassword 新的密码
/
public void updateSyUserPassword(String loginName,String oldPassword,String newPassword);
/
根据查询规则查询用户
@see HqlQueryRule
@param hqlQueryRule 查询规则
@return 结果集列表 /
public List querySyUser(HqlQueryRule hqlQueryRule);
/
根据登录名获取用户信息 @param loginName
@return
/
public SyUsers getSyUserByLoginName(String loginName);
/
根据登录名获取用户信息
@param loginName
@return
/
public boolean isRepeatUser(String loginName);
/
更新用户
@param loginName
@return
/
public void updateSyUsers(SyUsers syUsers);
}
// 实现接口 public class SyUsersServiceImp extends
orgspringframeworkormhibernate3supportHibernateDaoSupport
implements SyUsersService {
protected static final Log logger = LogFactorygetLog(SyUsersServiceImpclass); public SyUsersServiceImp() {}
/用户注册添加用户/
public void addSyUser(SyUsers syUsers) {
thisgetHibernateTemplate()save(syUsers);
Set babySet=syUsersgetSyLeaguer()getSyLeaguerBabies();
if(babySet!=null&&babySetsize()>0){
SyLeaguerBaby baby=(SyLeaguerBaby)babySetiterator()next();
thisgetHibernateTemplate()save(baby);
}
}
/用户登录/
public boolean checkSyUserLogin(SyUsers syUsers){
String querySQL = "FROM SyUsers WHERE loginName=:username and loginPassword=:password and state=:state and isEmp=:isemp";
Query query = thisgetSession()createQuery(querySQL);
querysetString("username", syUsersgetLoginName());
querysetString("password", syUsersgetLoginPassword());
querysetInteger("state", 1);
querysetInteger("isemp", 0);
List list = (List)querylist();
return listsize()>0true:false;
}
/密码找回得到注册密保信息/
public SyLeaguer isRightPasswordProtect(SyLeaguer syLeaguer){
String querySQL = "FROM SyLeaguer WHERE loginName=:loginname";
Query query = thisgetSession()createQuery(querySQL);
querysetString("loginname", syLeaguergetLoginName());
return (SyLeaguer)queryuniqueResult();
}
public void updateSyUserPassword(String loginName,String newPassword){
} public Page querySyUserPage(int pageNo, int pageSize,
HqlQueryRule hqlQueryRule) {
// TODO Auto-generated method stub
// Criteria c=thisgetSession()createCriteria(SyUsersclass);
// for(int i=0;restrictList!=null&&i<restrictListsize();i++){
// c=cadd((Criterion) restrictListget(i));
// }
// for(int i=0;orderList!=null&&i<orderListsize();i++){
// c=caddOrder((Order) orderListget(i));
// }
// csetFirstResult((int)pagegetStart());
// csetMaxResults(pagegetPageSize());
// List resultList=clist();
//HqlQueryRule hqr=new HqlQueryRule();
//hqraddEqual("id", new Integer(1234));
Page p = new Page();
Page page = null;
String queryPageHQL = "select new map( suloginName as loginName, suloginPassword as loginPassword,suisEmp as isEmp) from SY_RES su where 1=1";
String countHQL = "select count() from SyUsers where 1=1 ";// 总记录数
queryPageHQL=queryPageHQL+hqlQueryRulegetHql();
Query query = thisgetSession()createQuery(queryPageHQL);
List list = querylist();
PageTool pt=new PageTool(page);
page=ptgetHQLQueryPage(thisgetSession(), queryPageHQL,countHQL, null);
return page;
} public boolean updateSyUserState(String loginName, Integer state) {
// TODO Auto-generated method stub
return false;
} public List querySyUser(HqlQueryRule hqlQueryRule) {
// TODO Auto-generated method stub
return null;
} public void updateSyUserPassword(String loginName, String oldPassword,
String newPassword) {
// TODO Auto-generated method stub
} public SyUsers getSyUserByLoginName(String loginName) {
return (SyUsers)thisgetSession()get(SyUsersclass, loginName);
}
/用户名是否重复/
public boolean isRepeatUser(String loginName){
String querySQL = "FROM SyUsers WHERE loginName=:username";
Query query = thisgetSession()createQuery(querySQL);
querysetString("username", loginName);
List list = (List)querylist();
return listsize()>0true:false;
}
public void updateSyUserPassword(SyUsers syUsers){
thisgetSession()update(syUsers);
}
public void updateSyUsers(SyUsers syUsers){
thisgetSession()update(syUsers);
}
}
公司的项目的一段
VB使用ADO数据库可以分为有源数据库和无源数据库,即是否使用了DSN数据源,如下例:
1、在连接数据库前首先要在VB菜单中“工程”-“引用”从中选择 microsoft activeX Data objects 26 library和 microsoft activeX Data objects recordset 26两个组件,这是在连接数据前所必做的工作。
2、接下来定义ADO的连接对象,如下所示:
Set conn = New ADODBConnection
Set rs = New ADODBRecordset
第一种方法采用的是无源的数据库连接方法
connConnectionString = "Driver={sql server};server=JSZX3-11;uid=sa;pwd=;database=wzc"
connConnectionTimeout = 30
connOpen
rsOpen "select 用户名,密码 from login where 用户名='" & Trim(Combo1Text) & "' And 密码='" & Trim(Text1Text) & "'", conn, adOpenStatic, adLockReadOnly, adCmdText
If rsEOF = True And rsBOF Then
m = MsgBox("请重新登录", vbExclamation)
Text1Text = ""
Text1SetFocus
Else
Form1Hide
End If
rsClose
这是第二种方法连接数据库的方法,这一种方法是采用有源的方法与数据库连接的方法,代码如下所示:
Set conn = New ADODBConnection
Set rs = New ADODBRecordset
connConnectionString = "DSN=login;uid=sa;pwd=;"
connConnectionTimeout = 30
connOpen
rsOpen "select 用户名 from login", conn, adOpenStatic, adLockReadOnly, adCmdText
Dim i As String
For t = 0 To Val(rsRecordCount) - 1
i = Trim(rsFields("用户名")Value)
rsMoveNext
Combo1AddItem i
Next t
rsClose
增删查改的语句按照自己的需要填进去~
用Adoconnection与数据库连接,adoquery的connection为adoconnection,将datasource的dataset连adoquery,然后在adoquery的SQL中写sql语句即可,如果要连存储过程,只接用exec 存储过程也可以,只是要记住 ,用adoquery的execsql
随便找个基础的教 程中都 有这方面的介绍
以上就是关于用.net做一个程序 实现sql server数据库下的 增删改查全部的内容,包括:用.net做一个程序 实现sql server数据库下的 增删改查、C#.NET,程序怎么实现和SQLITE数据库的连接以及增删改查的功能、如何利用后台处理执行数据库的增删改查等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)