在你需要訪問的數據的
外圍配置里
,在sever配置里把那些紅色的都點擊開啟變成綠色。
如果你想用IP訪問資料庫,那麼就要在sqlsever網路配置里,把那個TCP/IP開啟。
然後用被訪問的資料庫SA和密碼訪問
2. 怎樣實現SQL遠程連接
connections的字元串裡面就有sql server2000的連接參數,你注意有Server參數,Server=localhost;DataBase=AdSearch;Uid=;Pwd=
localhost這個是本機,你用伺服器的ip就好了,不過調試的時候可能會碰到許可權的問題,這個你要自己試試。
另外兩台都安裝的sql server2000 的電腦也能用查詢分析器相互查詢,這個在sql 語句裡面寫,
如果IP不固定,你可以把IP寫在config裡面,然後連接資料庫的時候取得配置信息,具體你可以看appsetting節點寫過鍵值對如:ip 123.2.1.1就好啦,然後你在連接資料庫的地方取得這個值,放進connections裡面。就ok了。這樣可以做到動態配置,你程序不用重啟就可以達到換ip連接的目的。
3. 資料庫教程:sql 怎樣外網連接遠程資料庫
要點:
1.確認伺服器端SQL服務埠號是否為:1433
2.如果不是1433,配置客戶端
3.建立伺服器端登錄帳號,確保角色及管理資料庫
一、查看伺服器端情況
1. 看ping 伺服器IP能否ping通。
這個實際上是看和遠程sql server 伺服器的物理連接是否存在。如果不行,請檢查網路,查看配置,當然得確保遠程sql server 伺服器的IP拼寫正確。
2. 在Dos或命令行下輸入telnet 伺服器IP 埠,看能否連通。
如telnet 202.114.100.100 1433
通常埠值是1433,因為1433是sql server 的對於Tcp/IP的默認偵聽埠。如果有問題,通常這一步會出問題。通常的提示是「……無法打開連接,連接失敗"。
如果這一步有問題,應該檢查以下選項。
1) 檢查遠程伺服器是否啟動了sql server 服務。如果沒有,則啟動。
2) 檢查sql server伺服器端有沒啟用Tcp/IP協議,因為遠程連接(通過網際網路)需要靠這個協議。檢查方法是,在伺服器上打開 開始菜單->程序->Microsoft SQL Server->伺服器網路實用工具,看啟用的協議里是否有tcp/ip協議,如果沒有,則啟用它。
3) 檢查伺服器的tcp/ip埠是否配置為1433埠。仍然在伺服器網路實用工具里查看啟用協議裡面的tcp/ip的屬性,確保默認埠為1433,並且隱藏伺服器復選框沒有勾上。
事實上,如果默認埠被修改,也是可以的,但是在客戶端做telnet測試時,寫伺服器埠號時必須與伺服器配置的埠號保持一致。如果隱藏sql server伺服器復選框被勾選,則意味著客戶端無法通過枚舉伺服器來看到這台伺服器,起到了保護的作用,但不影響連接,但是Tcp/ip協議的默認埠將被隱式修改為2433,在客戶端連接時必須作相應的改變(具體方式見 二:設置客戶端網路實用工具)。
4) 如果伺服器端操作系統打過sp2補丁,則要對windows防火牆作一定的配置,要對它開放1433埠,通常在測試時可以直接關掉windows防火牆(其他的防火牆也關掉最好)。(4、5步我沒有做就成功了)
5) 檢查伺服器是否在1433埠偵聽。如果sql server伺服器沒有在tcp連接的1433埠偵聽,則是連接不上的。檢查方法是在伺服器的dos或命令行下面輸入
netstat -a -n 或者是netstat -an,在結果列表裡看是否有類似 tcp 127.0.0.1 1433 listening 的項。如果沒有,則通常需要給sql server 2000打上至少sp3的補丁。其實在伺服器端啟動查詢分析器,輸入select @@version 執行後可以看到版本號,版本號在8.0.2039以下的都需要打補丁。
如果以上都沒問題,這時你再做telnet 伺服器ip 1433 測試,將會看到屏幕一閃之後游標在左上角不停閃動。恭喜你,你馬上可以開始在企業管理器或查詢分析器連接
4. 怎樣使用遠程桌面連接遠程sql資料庫
開始->程序->附件->通訊->遠程桌面鏈接,
輸入用戶名和密碼,你就可以連接到遠程計算機了。
我覺得「連接遠程sql數據」和「遠程桌面連接」是兩個不同的問題
連接遠程sql資料庫只需要用sql
server的企業管理器就可以了,
企業管理器->右點「sql
server組」->新建
按步驟填寫相應的信息,應該可以連接
5. C#中怎麼遠程連接SQL資料庫最好給出代碼
SqlCommand cmd = new SqlCommand(); cmd.Connection = new SqlConnectionnew SqlConnection("SERVER='你要訪問的主機IP'; DATABASE='你要訪問的資料庫'; UID='登陸名'; PWD='登錄密碼'"); cmd.CommandText = "你要這行的Sql語句"; cmd.Connection.Open(); cmd.要執行的操作; 你是不是把圖片存在資料庫裡面的
6. 如何連接遠程SQL伺服器
首先檢查SQL資料庫伺服器中是否允許遠程鏈接。其具體操作如下:
(1)右擊SQL Server 2008選項,選擇SQL Server 2008 Management Studio:
(2)打開「伺服器屬性(Server Properties)」 (右鍵連接名稱-屬性)
選擇「允許用戶對該伺服器進行遠程鏈接」選項後,檢查是否問題已經排除。如果遠程鏈接已經成功,該過程已經完成。若用戶發現「提醒錯誤對話框」依然彈出,那麼還需要做的是:
(二)檢查SQL網路鏈接配置。其具體操作如下:
打開「SQL伺服器配置管理」選項>打開「該節點的SQL伺服器網路配置選項」>選擇「微軟SQL 伺服器網路協議」選項(或用戶的SQL伺服器中為SQL伺服器配置網路協議的選項,不同版本的SQL名稱可能不同):
設置完成後重啟sql服務(net stop mssqlserver net start mssqlserver)
確定「微軟SQL伺服器網路選項協議」中的TCP/IP協議對伺服器來說是有效的。再次檢查是否已經可以執行遠程鏈接。若「錯誤提醒對話框」依然彈出,需要進一步檢查SQL伺服器防火牆選項。
(三)檢查SQL伺服器防火牆設置 (快捷步驟-直接關閉防火牆(不安全))
如
果在進行完上兩步操作後,用戶端計算機仍然無法遠程鏈接到SQL伺服器,用戶需要做的是對SQL伺服器防火牆進行重新配置。在進行這一步操作時,首先找到
SQL伺服器上那個埠支持TCP/IP協議。用戶可以在SQL伺服器防火牆已經處於運行狀態下,點擊「TCP/IP協議」選擇「屬性」:
從
上圖中可以看出,這台SQL伺服器上支持TCP/IP協議的是1433埠。下一步要做的是在防火牆的配置中允許1433埠支持TCP/IP協議
即可。如果伺服器上運行的是Windows
7操作系統,其配置步驟為(其他微軟操作系統的做法類似),打開「控制面板」選擇「Windows防火牆」選項:
選擇「高級設置」後,在右邊菜單欄中找出「具有高級安全選項的Windows防火牆」並將其打開。打開後會發現在左邊菜單欄中有「入站規則(Inboud Rules)」選項。將該選項打開,並在右邊菜單欄中選擇「新建規則(New Rule)」選項:
打開「新建規則」選項後,利用「新內置綁定規則向導」為1433埠配置「內部綁定協議」配置為適用於TCP/IP協議即可。(前提是,需要完成該步驟以前所述的所有步驟),根據下面的幾幅圖為1433埠配置適用於1433埠即可:
以上全部都沒問題了之後打開SQL2008,輸入遠程伺服器名或IP、登錄名及密碼就可以連接到遠程伺服器上了。
7. 遠程連接SQL數據源
// S6_1Dlg.cpp : 實現文件
//
#include "stdafx.h"
#include "S6_1.h"
#include "S6_1Dlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// 用於應用程序「關於」菜單項的 CAboutDlg 對話框
class CAboutDlg : public CDialog
{
public:
CAboutDlg();
// 對話框數據
enum { IDD = IDD_ABOUTBOX };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
// 實現
protected:
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
END_MESSAGE_MAP()
// CS6_1Dlg 對話框
CS6_1Dlg::CS6_1Dlg(CWnd* pParent /*=NULL*/)
: CDialog(CS6_1Dlg::IDD, pParent)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
//初始化資料庫操作
ifbegin=TRUE;//第一次打開
CString m_dbstr,m_errmsg,m_SQLstr;
m_dbstr.Format("DSN=%s;UID=%s;PWD=%s","SampleDB","","");//資料庫名稱,用戶,口令
TRY{
if(m_db.IsOpen())
m_db.Close();
m_db.OpenEx(m_dbstr);//通過ODBC來打開資料庫
m_record=new CRecordset(&m_db);
m_SQLstr="select * from CustomerTable;";//准備要執行的SQL語句
if(m_record->IsOpen())
m_record->Close();
m_record->Open(CRecordset::dynaset,m_SQLstr);//執行SQL語句,得到記錄集
if(m_record->IsBOF())
AfxMessageBox("NO RECORD IN TABLE");//報告記錄集是否為空
}
CATCH_ALL(e){
e->GetErrorMessage(m_errmsg.GetBuffer(128),128);
AfxMessageBox(m_errmsg);
return;
}
END_CATCH_ALL
}
void CS6_1Dlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_EDIT1, m_userID);
DDX_Control(pDX, IDC_EDIT2, m_pwd);
DDX_Control(pDX, IDC_EDIT3, m_sex);
DDX_Control(pDX, IDC_EDIT4, m_old);
DDX_Control(pDX, IDC_EDIT5, m_Email);
DDX_Control(pDX, IDC_BUTTON1, m_button1);
DDX_Control(pDX, IDC_BUTTON2, m_button2);
}
BEGIN_MESSAGE_MAP(CS6_1Dlg, CDialog)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
//}}AFX_MSG_MAP
ON_BN_CLICKED(IDC_BUTTON1, OnBnClickedButton1)
ON_BN_CLICKED(IDC_BUTTON2, OnBnClickedButton2)
ON_BN_CLICKED(IDCANCEL, OnBnClickedCancel)
END_MESSAGE_MAP()
// CS6_1Dlg 消息處理程序
BOOL CS6_1Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
// 將\「關於...\」菜單項添加到系統菜單中。
// IDM_ABOUTBOX 必須在系統命令范圍內。
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}
// 設置此對話框的圖標。當應用程序主窗口不是對話框時,框架將自動
// 執行此操作
SetIcon(m_hIcon, TRUE); // 設置大圖標
SetIcon(m_hIcon, FALSE); // 設置小圖標
// TODO:在此添加額外的初始化代碼
return TRUE; // 除非設置了控制項的焦點,否則返回 TRUE
}
void CS6_1Dlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
// 如果向對話框添加最小化按鈕,則需要下面的代碼
// 來繪制該圖標。對於使用文檔/視圖模型的 MFC 應用程序,
// 這將由框架自動完成。
void CS6_1Dlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // 用於繪制的設備上下文
SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
// 使圖標在工作矩形中居中
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
// 繪制圖標
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
}
//當用戶拖動最小化窗口時系統調用此函數取得游標顯示。
HCURSOR CS6_1Dlg::OnQueryDragIcon()
{
return static_cast<HCURSOR>(m_hIcon);
}
void CS6_1Dlg::OnBnClickedButton1()//查詢下一條記錄
{
// TODO:在此添加控制項通知處理程序代碼
CString m_errmsg;
CDBVariant m_value;//存放記錄中的欄位值
TRY{
if(ifbegin)
{
m_record->MoveFirst();
ifbegin=FALSE;
}
else
m_record->MoveNext();//移向下一條記錄
if(!m_record->IsEOF())
{
m_record->GetFieldValue("UserID",m_value);
m_userID.SetWindowText(*m_value.m_pstring);//得到userID
m_record->GetFieldValue("UserPassword",m_value);
m_pwd.SetWindowText(*m_value.m_pstring);//得到密碼
m_record->GetFieldValue("Sex",m_value);
m_sex.SetWindowText(*m_value.m_pstring);//得到用戶的性別
m_record->GetFieldValue("Old",m_value);
CString str;
str.Format("%d",m_value.m_iVal);
m_old.SetWindowText(str);//得到用戶的年齡
m_record->GetFieldValue("Email",m_value);
m_Email.SetWindowText(*m_value.m_pstring);//得到用戶的電子郵件地址
}
else
{
AfxMessageBox("已經到達記錄集尾,單擊『清除』按鈕可以返回記錄集頂端");
m_button1.EnableWindow(FALSE);//禁止再繼續查詢
}
}
CATCH_ALL(e){
e->GetErrorMessage(m_errmsg.GetBuffer(128),128);
AfxMessageBox(m_errmsg);
return;
}
END_CATCH_ALL
}
void CS6_1Dlg::OnBnClickedButton2()//清空編輯控制項中的數據
{
// TODO:在此添加控制項通知處理程序代碼
m_Email.SetWindowText("");
m_userID.SetWindowText("");
m_old.SetWindowText("");
m_pwd.SetWindowText("");
m_sex.SetWindowText("");
ifbegin=TRUE;//將資料庫重新置成新打開的狀態
m_button1.EnableWindow(TRUE);//允許重新開始查看記錄
}
void CS6_1Dlg::OnBnClickedCancel()
{
// TODO: 在此添加控制項通知處理程序代碼
OnCancel();
}
8. 如何遠程連接sql server資料庫
1、這里我們以Sql Server 2008 R2為例,打開Sql Server 2008 R2使用windows身份登錄
2、登錄後,右鍵選擇【屬性】。左側選擇【安全性】,選中右側的【SQL Server 和 Windows 身份驗證模式】以啟用混合登錄模式,如果已經是就跳過這步。
打開Sql Serve
3、選擇【連接】,勾選【允許遠程連接此伺服器】,然後點【確定】
4、展開【安全性】—>【登錄名】—>【sa】,右鍵選擇【屬性】
5、左側選擇【常規】,右側選擇【SQL Server 身份驗證】,並設置密碼,如果已經設置了,跳過這步
6、右擊資料庫選擇【方面】
7、在右側的方面下拉框中選擇「伺服器配置」;將【RemoteAccessEnabled】屬性設為「True」,點「確定」
9. 如何用SQL語句修改SQLServer「允許遠程連接」設置項
您好,你的問題,我之前好像也遇到過,以下是我原來的解決思路和方法,希望能幫助到你,若有錯誤,還望見諒!登陸SQL Server 2008(windows身份認證),登陸後右擊,選擇「屬性」。2左側選擇「安全性」,選中右側的「SQL Server 和 Windows 身份驗證模式」以啟用混合登錄模式。3選擇「連接」,勾選「允許遠程連接此伺服器」,建議將「最大並發連接數」按實際情況,進行設置,然後點「確定」。4展開「安全性」->「登錄名」->「sa」,右鍵選擇「屬性」。5左側選擇「常規」,右側選擇「SQL Server 身份驗證」,並設置密碼。選擇「狀態」,選中「啟用」,點擊「確定」。右擊資料庫選擇「方面」。在「方面」下接列表框中,選擇「伺服器配置,「RemoteAccessEnabled」屬性和」RemotoDacEnabled」設為「True」,點「確定」。至此SSMS已設置完畢,先退出,再用sa登錄,成功即表示sa帳戶已經啟用。下面開始配置Sql Server Configuration Manager (SSCM),選中左側的「SQL Server服務」,確保右側的「SQL Server」以及SQL Server Browser正在運行。打開左側「SqlServer網路配置」,打開「你自己資料庫實例名的協議」,查看右側的TCP/IP默認是「已禁用」,將其修改為「已啟用」。雙擊打開「TCP/IP」查看「TCP/IP屬性」下「協議」選項卡中的「全部偵聽」和「已啟用」項,是否都是設置成「是」。選擇「IP Addersses」選項卡,IP1、IP2、IPAll設置TCP埠為「1433」,TCP動態埠為空值,已啟用為「是」。將"客戶端協議"的"TCP/IP"也修改為「已啟用」。雙擊打開右側「TCP/IP」,打開「TCP/IP屬性」,將默認埠設為「1433」,已啟用為「是」。配置完成,重新啟動SQL Server 2008。最後一步,必需要防火牆上把SQL Server 的1433 TCP埠和1434 UDP埠映射出去。,非常感謝您的耐心觀看,如有幫助請採納,祝生活愉快!謝謝!
10. mfc如何遠程連接sql資料庫
1. 配置SQL Server外圍應用伺服器,開啟SQL Server 2005遠程連接功能:
「配置工具」->「SQL Server外圍應用配置器」-> 選擇「服務和連接的外圍應用配置器」->選擇Database Engine節點下的 「遠程連接」-> 選擇「本地連接和遠程連接」-> 選擇「同時使用TCP/IP和named pipes」-> 點擊確定,重新啟動
資料庫
服務。
2. 把登陸設置改為SQL Server 和 Windows 身份驗證模式:
打開SQL Server Management Studio管理器,點擊伺服器上面右鍵然後查看屬性,在安全性選項裡面對服務身份驗證選擇「SQL Server 和 Windows 身份驗證模式」。
3.修改SQL Server sa的密碼:
在SQL Server Management Studio管理器中,展開伺服器上的「安全性」->登陸名->在sa帳號上點右鍵屬性,這樣在「常規」的選擇頁中更改sa登陸帳號的密碼。注意SQL Server2005中,不允許密碼設置簡單,否則會通不過。然後在選擇頁的「狀態」的登錄修改為啟用。
4.設置SQL Server 的埠號
在SQL Server Configuration Manager管理器中,展開SQL Server 2005 Network Configuration項目 -> 單擊下面的 Protocols for 'dbname' -> 在右側的窗口中,右鍵單擊"TCP/IP"項,選擇"屬性" -> 打開"TCP/IP properties"窗口 - > 單擊"IP Address"選項卡 -> 將所有IP地址下面的 "TCP Port" 值設置成1433
5.確保開啟SQL Server服務
在SQL Server Configuration Manager管理器中, 選中SQL Server 2005 Services,在右側的窗口中啟動SQL Server ('YourInstance'),
6. 修改連接字元串,在字元串中加入SQl Server 服務的埠號.
strConnection.Format("driver={SQL Server};Server=xx.xx.xx.xx,1433;DATABASE=mydatabase;UID=name;PWD=pwd");
7.連接coder:
stdafx.h中引用:
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF")
8. 連接SQL SERVER伺服器,並連接資料庫
if(!AfxOleInit()) //這就是初始化COM庫
{
AfxMessageBox("資料庫初始化出錯!");
}
_ConnectionPtr pCn("ADODB.Connection");
pCn->Open((_bstr_t)"Driver=
{SQL Server};Server=127.0.0.1,1433;Database=carcom;UID=sa;PWD=abc123456","","",adModeUnknown);