當前位置:首頁 » 操作系統 » 資料庫操作源碼

資料庫操作源碼

發布時間: 2022-08-16 11:26:38

⑴ 求C++操作sql Server資料庫源碼文件

一、配置:

1.設置SQLSERVER伺服器為SQL登錄方式,並且系統安全性中的sa用戶要設置登錄功能為「啟用」,還有必須要有密碼。

2.需要在ODBC中進行數據源配置,數據源選」SQL SERVER」,登錄方式使用「使用輸入用戶登錄ID和密碼的SQL SERVER驗證」,並填寫登錄名(sa)和密碼,注意一點,密碼不能為空,這就意味著你的sa用戶必須得有密碼。否則無法通過系統本身的安全策略。測試通過就完成了配置。


二、連接初始化

1.在你所建立的C++項目中的stdafx.h頭文件中引入ADO

具體代碼如下

#import"c:.dll"
no_namespacerename("EOF","adoEOF")rename("BOF","adoBOF")

2.定義_ConnectionPtr變數後調用Connection對象的Open方法建立與伺服器的連接。

數據類型_ConnectionPtr實際上是由類模板_com_ptr_t得到的一個具體的實例類。_ConnectionPtr類封裝了Connection對象的Idispatch介面指針及其一些必要的操作。可以通過這個指針操縱Connection對象。

例如連接SQLServer資料庫,代碼如下:

//連接到MSSQLServer
//初始化指針
_ConnectionPtrpMyConnect=NULL;
HRESULThr=pMyConnect.CreateInstance(__uuidof(Connection));
if(FAILED(hr))
return;
//初始化鏈接參數
_bstr_tstrConnect="Provider=SQLOLEDB;
Server=127.0.0.1;
Database=mytest;
uid=sa;pwd=sa;";//Database指你系統中的資料庫
//執行連接
try
{
//Open方法連接字串必須四BSTR或者_bstr_t類型
pMyConnect->Open(strConnect,"","",NULL);
}
catch(_com_error&e)
{
MessageBox(e.Description(),"警告",MB_OK|MB_ICONINFORMATION);
}//發生鏈接錯誤

三、簡單的數據連接

//定義_RecordsetPtr變數,調用它Recordset對象的Open,即可打開一個數據集
//初始化過程以下是個實例
_RecordsetPtrpRecordset;
if(FAILED(pRecordset.CreateInstance(__uuidof(Recordset))))
{
return;
}
//執行操作
try
{
pRecordset->Open(_variant_t("userinfo"),
_variant_t((IDispatch*)pMyConnect),
adOpenKeyset,adLockOptimistic,adCmdTable);
}
catch(_com_error&e)
{
MessageBox("無法打開userinfo表","系統提示",
MB_OK|MB_ICONINFORMATION);
}

四、執行SQL語句

這里是關鍵,我認為只要你懂點SQL語句那麼一切都會方便許多比用上面的方法簡單,更有效率點。

首先

m_pConnection.CreateInstance(_uuidof(Connection));
//初始化Connection指針
m_pRecordset.CreateInstance(__uuidof(Recordset));
//初始化Recordset指針
CStringstrSql="select*fromtb_e_goods";//具體執行的SQL語句
m_pRecordset=m_pConnection->Execute(_bstr_t(strSql),
NULL,adCmdText);//將查詢數據導入m_pRecordset數據容器

至此 你的SQL語句已經執行完成了m_pRecordset內的數據就是你執行的結果。

取得記錄:

while(!m_pRecordset->adoEOF)//遍歷並讀取name列的記錄並輸出
{
CStringtemp=(TCHAR*)(_bstr_t)m_pRecordset->GetFields()->GetItem
("name")->Value;
AfxMessageBox(temp);
pRecordset->MoveNext();
}

五、插入記錄

//記得初始化指針再執行以下操作
CStringstrsql;
strsql.Format("insertintotb_e_goods(no,name,price)
values('%d','%s',%d)",m_intNo,m_strName,m_intPrice);
m_pRecordset=m_pConnection->
Execute(_bstr_t(strsql),NULL,adCmdText);

六、修改記錄

CStringstrsql;
strsql.Format("updatetb_e_goodssetname='%s',
price=%dwhereno=%d",m_strName,m_intPrice,m_intNo);
m_pRecordset=m_pConnection->Execute(_bstr_t(strsql),NULL,adCmdText);


七、刪除記錄

CStringstrsql;
strsql.Format("deletefromtb_e_goodswhereno='%d'",m_intNo);
m_pRecordset=m_pConnection->Execute(_bstr_t(strsql),NULL,adCmdText)A


其實要想使用C++玩轉SQLServer,最主要的還是要對SQL語句有所了解,才能方便的操作資料庫

⑵ 請高手幫忙寫一個對資料庫操作的java小程序!求源碼!

public class Mdbda {

Statement stat;
Connection con = null;
//private String strConnect ="jdbc:odbc:DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=E:\\sql\\ffxx.accdb;";
//類

public Mdbda() {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

String url = "jdbc:odbc:driver=Microsoft Access Driver (*.mdb, *.accdb);DBQ=E://sql//jxjyExam.accdb";
con = DriverManager.getConnection(url);
stat = con.createStatement();
} catch (ClassNotFoundException ex) {
System.out.println("載入驅動失敗");
} catch (SQLException ex) {
Logger.getLogger(Mdbda.class.getName()).log(Level.SEVERE, null, ex);
}

}

public List getOtherDa(String where) {
List list = new ArrayList();
try {

String action = "select * from exam " + where;
ResultSet rs = null;
rs = stat.executeQuery(action);
while (rs.next()) {
String content=rs.getString("content");
list.add(content);
// System.out.println(content);
}
rs.close();
stat.close();
con.close();
} catch (SQLException ex) {
Logger.getLogger(Mdbda.class.getName()).log(Level.SEVERE, null, ex);
}
return list;
}
}
其他類中直接調用 new Mdbda().getOtherDa()就可以獲取。
以上是access

⑶ C#winform程序對access資料庫進行增刪查改操作源碼,叮當小馬的就不用發了

不懂。你這是要OLE得操作方法么?
算了。代碼給出。我這個是SQL得。你改成OLEDB的就能用了。夠詳細吧!
===========================================================
string conn="Server=伺服器名;Database=資料庫名;uid=資料庫用戶名;pwd=資料庫密碼";
SqlConnection sqlconn=new SqlConnection(conn);//連接到資料庫
=========================================================
表的基本操作的語句要SQL的:
添加語句:Insert into 表名 values(欄位名1,欄位名2)
修改語句:Update 表明
set 欄位名1=修改的值,欄位名1=修改的值
where 欄位名=所修改的記錄欄位名
刪除語句:delete 表名 where 欄位名=所要刪除欄位的名稱
查詢語句:select * from 表名
=================================================================
例:
資料庫名為:Test, 資料庫用戶名為:sa , 資料庫密碼:123
有表名為:Admin
該表的欄位:id(int)、name(varchar(8))、pwd(varchar(8))
id name pwd
1 aa 123
2 bb 456
3 cc 789
=========================================
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page
{
public string sql;
protected void Page_Load(object sender, EventArgs e)
{
sql = "select * from Admin"; //查詢語句
bind(sql);
}
protected void bind(string sql)
{
string conn="Server=.;DataBase=Test;uid=sa;pwd=123";
SqlConnection sqlconn=new SqlConnection(conn);
SqlCommand cmd=new SqlCommand(sql,sqlconn);
sqlconn.Open();
SqlDataReader dr = cmd.ExecuteReader();
GridView1.DataSource=dr;
GridView1.DataBind();
}
protected void Button1_Click(object sender, EventArgs e)
{
sql = "delete Admin where id=" + Convert.ToInt32(TextBox1.Text);//刪除語句
string conn = "Server=.;DataBase=Test;uid=sa;pwd=123";
SqlConnection sqlconn = new SqlConnection(conn);
SqlCommand cmd = new SqlCommand(sql, sqlconn);
sqlconn.Open();
cmd.ExecuteReader();
bind("select * from Admin");
}
protected void Button2_Click(object sender, EventArgs e)
{
sql = "insert into Admin values('" + TextBox2.Text + "','" + TextBox3.Text + "')";//添加語句
string conn = "Server=.;DataBase=Test;uid=sa;pwd=123";
SqlConnection sqlconn = new SqlConnection(conn);
SqlCommand cmd = new SqlCommand(sql, sqlconn);
sqlconn.Open();
cmd.ExecuteReader();
bind("select * from Admin");
}
protected void Button3_Click(object sender, EventArgs e)
{
sql = "update Admin set name='" + TextBox5.Text + "',pwd='" + TextBox6.Text + "' where id=" + Convert.ToInt32(TextBox4.Text);//修改語句
string conn = "Server=.;DataBase=Test;uid=sa;pwd=123";
SqlConnection sqlconn = new SqlConnection(conn);
SqlCommand cmd = new SqlCommand(sql, sqlconn);
sqlconn.Open();
cmd.ExecuteReader();
bind("select * from Admin");
}

⑷ 我下了個asp.net源碼,裡面的資料庫怎麼操作

這樣直接進行附加資料庫就可以。
點擊資料庫節點右鍵然後任務裡面有個附加資料庫。找到附加上就可以了。
希望對你有幫助。不懂繼續追問!

⑸ 誰能給我一段寫入資料庫的源碼簡單點的。

conn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & "資料庫路徑" & "資料庫名稱"
set rsUserInfo=server.CreateObject("adodb.recordset")
mysql = "SELECT * FROM 表名稱"
rsUserInfo.Open mysql,conn,3,3
rsUserInfo.Addnew()
rsUserInfo("欄位名稱") = Trim(變數名稱)
rsUserInfo.update()
rsUserInfo.close()
set rsUserInfo=Nothing

以上代碼中的conn是你的資料庫連接,你首先要確定你的資料庫連接已經建立成功,否則無法正確運行。

我以上給出的代碼是在資料庫中新插入一條記錄,如果你是要修改資料庫中的記錄可以用下面的,

conn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & "資料庫路徑" & "資料庫名稱"
set rsUserInfo=server.CreateObject("adodb.recordset")
mysql = "SELECT * FROM 表名稱 WHERE 要修改記錄的ID="&返回的ID
rsUserInfo.Open mysql,conn,3,3

If Not rsUserInfo.eof Then
rsUserInfo("欄位名稱") = Trim(變數名稱)
rsUserInfo.update()
Else
Response.write("沒有找到對應的記錄")
End If
rsUserInfo.close()

set rsUserInfo=Nothing

⑹ 你有一個簡單的資料庫的源代碼嗎最好用Java實現的...

class ConnectionProvider{
private static String JDBC_DRIVER;
private static String DB_URL;
private static String DB_USER;
private static String DB_PASSWORD;

public ConnectionProvider()
{
JDBC_DRIVER = "com.mysql.jdbc.Driver"
DB_URL = "jdbc:mysql://localhost:3306/u-disk";
DB_USER = "root";
DB_PASSWORD = "root"
};
public Connection getConnection()
{
try {
Class.forName(JDBC_DRIVER);
} catch (Exception e) {
System.out.println("驅動文件路徑有誤!");
}
}
Connection con = null;
try {
con = DriverManager.getConnection(DB_URL, DB_USER,
DB_PASSWORD);
} catch (SQLException e) {
System.out.println("資料庫連接建立異常!\n@shy2850@" + e.getMessage() +
e.getCause());
}
System.out.println("得到連接:Connection " + ConnectionPool.connections.size() + 1);
return new ConnectionImpl(con);
}
}

可以使用這個包裝的資料庫連接數據源在DAO工具類中使用:

package com.jdbc;

import java.sql.*;

/**課題:封裝資料庫的增刪改查的工具類的實現。
*
* 假設相關資料庫的表結構如下:
* 表名:user
* 列名及屬性:id(int 自增),name(varchar(20)),tele(char(12)),birthday(date)
* @author shy2850
*/
public class UserDAO {

Connection conn;

public UserDAO(Connection conn) {
this.conn = conn;
}

public int save(User user) throws SQLException {
String sql = "insert into user values(0,?,?,?)";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, user.getName());
pstmt.setString(2, user.getTele());
pstmt.setDate(3, user.getBirthday());
int n = pstmt.executeUpdate();
pstmt.close();
return n;
}

public int delete(User user) throws SQLException{
String sql = "delete from user where id = "+user.getId();
Statement stmt = conn.createStatement();
int n = stmt.executeUpdate(sql);
stmt.close();
return n;
}

public int update(User user) throws SQLException{
String sql = "update user set name=?, tele=?, birthday=? where id = "+user.getId();
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(2, user.getName());
pstmt.setString(3, user.getTele());
pstmt.setDate(4, user.getBirthday());
int n = pstmt.executeUpdate(sql);
pstmt.close();
return n;
}

public User getUser(Integer id) throws SQLException{
String sql = "select * from user where id = " + id;
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
User user = getUserFromResultSet(rs);
rs.close();
stmt.close();
return user;
}

static User getUserFromResultSet(ResultSet rs) throws SQLException{
Integer id = rs.getInt("id");
String name= rs.getString("name");
String tele= rs.getString("tele");
Date birthday = rs.getDate("birthday");
return new User(id, name, tele, birthday);
}
}
/**
* 構建資料庫表的java類映射
*/
class User{
private Integer id;
private String name;
private String tele;
private Date birthday;

public User() {
}
public User(Integer id, String name, String tele, Date birthday) {
super();
this.id = id;
this.name = name;
this.tele = tele;
this.birthday = birthday;
}

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getTele() {
return tele;
}

public void setTele(String tele) {
this.tele = tele;
}

public Date getBirthday() {
return birthday;
}

public void setBirthday(Date birthday) {
this.birthday = birthday;
}
}

⑺ VB.net中用SQL語句操作資料庫並實時刷新顯示在DataGridView中,附源碼,求指導

重要的是區別兩個方法:DbAdapter.Fill是讀,DbCommand.ExecuteNonquery是執行修改。刪除按鈕下理論上應先調用修改,確認成功後,再調用讀取。

⑻ 易語言MySQL資料庫操作

.版本
2
.支持庫
mysql
.局部變數
記錄集,
整數型
.局部變數
a1,
文本型
.局部變數
a2,
文本型

記錄集

查找記錄
(MySql句柄,
「b_1」,
「a1」,
,
)
讀欄位值
(記錄集,
「a1」,
a1)
.判斷開始
(user

a1)

返回
(真)
.默認

記錄集

查找記錄
(MySql句柄,
「b_2」,
「a2」,
,
)

讀欄位值
(記錄集,
「a2」,
a2)

.判斷開始
(password

a2)

返回
(真)

.默認

更新記錄
(MySql句柄,
「b_2」,
「a2」,
「132515」)

熱點內容
python調用外部程序 發布:2025-01-16 20:14:09 瀏覽:396
緩解壓力英語作文 發布:2025-01-16 20:13:31 瀏覽:64
javaname 發布:2025-01-16 20:13:15 瀏覽:21
用戶訪問表空間 發布:2025-01-16 20:07:07 瀏覽:943
java代碼自動編譯 發布:2025-01-16 19:58:14 瀏覽:313
編程很困難 發布:2025-01-16 19:58:09 瀏覽:673
gg登錄源碼 發布:2025-01-16 19:58:07 瀏覽:292
微信收藏表情文件夾 發布:2025-01-16 19:28:57 瀏覽:15
ra伺服器搭建 發布:2025-01-16 19:28:12 瀏覽:18
javaftp讀取 發布:2025-01-16 19:28:02 瀏覽:185