探讨如何配置SQL2008,让其允许C#远程外部连接的方法详解

Step 1:在服务器图标上单击右键,选择property,然后选connection,把allow remote connection选上,这一步的目的是让数据库允许远程连接。

Step 2:在数据库服务器图标上,展开目录,找到Security下的Logins子目录树,设置SA账户的属性,改password,在status栏里,login选上enable。这一步的目的是,允许远程客户端使用sa用户邓肯,sa是system administrator的缩写,拥有数据库最高管理权限,默认状态下是禁用的。

Step3:在数据库服务器图标上右键,打开Facets选项把RemoteDacEnabled的value改成true。这一步的目的是允许建立远程专用管理员连接,此种连接拥有最高权限,即使无法建立标准连接,也可以建立DAC连接。

Step4:开启服务,打开SQL Server Configuration Tool,打开网络配置,选择TCP/IP协议,点开属性,IP地址填数据库所在服务器的IP地址,如果是本地服务器,填127.0.0.1。

测试方法:
建立一个C# Console application源文件,代码如下:


代码如下:

class Program
    {
        static void Main(string[] args)
        {
            SqlConnection con = new SqlConnection("server=.;uid=sa;pwd=123456789;database=MyTable");
            try
            {
                con.Open();

Console.WriteLine("连接数据库成功");         
            }
            catch
            {
                Console.WriteLine("无法连接数据库");         
            }
            Console.ReadKey();
        }
    }

如果能正常连接,则会提示连接成功。

(0)

相关推荐

  • C#启动外部程序的几种常用方法汇总

    本文汇总了C#启动外部程序的几种常用方法,非常具有实用价值,主要包括如下几种方法: 1. 启动外部程序,不等待其退出. 2. 启动外部程序,等待其退出. 3. 启动外部程序,无限等待其退出. 4. 启动外部程序,通过事件监视其退出. 实现代码如下: // using System.Diagnostics; private string appName = "calc.exe"; /// <summary> /// 1. 启动外部程序,不等待其退出 /// </summ

  • C#中WinForm程序退出方法技巧总结

    本文实例总结了C#中WinForm程序退出方法技巧.分享给大家供大家参考.具体分析如下: 在c#中退出WinForm程序包括有很多方法,如:this.Close(); Application.Exit();Application.ExitThread(); System.Environment.Exit(0); 等他们各自的方法不一样,下面我们就来详细介绍一下. 1.this.Close();   只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退

  • extern外部方法使用C#的实现方法

    本文实例讲述了extern外部方法使用C#的方法.分享给大家供大家参考.具体分析如下: 外部方法使用C#步骤如下: 1.增加引用using System.Runtime.InteropServices; 2.声明和实现的连接[DllImport("kernel32", SetLastError = true)] 3.声明外部方法public static extern int GetCurrentDirectory(int a, StringBuilder b); 4.对外部方法操作

  • C#实现获取磁盘空间大小的方法

    本文实例讲述了C#实现获取磁盘空间大小的方法.分享给大家供大家参考.具体实现方法如下: 方法一:利用System.IO.DriveInfo.GetDrives方法来获取 复制代码 代码如下: ///   /// 获取指定驱动器的空间总大小(单位为B) ///   ///  只需输入代表驱动器的字母即可 (大写) ///    public static long GetHardDiskSpace(string str_HardDiskName) {     long totalSize= new

  • C++中extern "C"的用法

    学习过C++的人都知道,extern关键字可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义.这里起到的是声明作用范围的用处.另外,extern还可以与"C"连用,作为链接指示.本文就此进行实例说明如下: 一.C++名字修饰(Name Mangling) 首先需要从C++的重载说起,在C++中函数重载指的是几个函数的函数名相同,参数列表不同.那么当生成obj中间文件/目标文件的时候,C++编译器如何区分这几个重载函数呢?可以

  • C#实现软件监控外部程序运行状态的方法

    本文实例讲述了C#实现软件监控外部程序运行状态的方法.分享给大家供大家参考.具体方法如下: 需要外挂一个程序,用于监控另一个程序运行状态,一旦检测到另一程序关闭,就触发一个事件做其他处理. 引用的类 复制代码 代码如下: using System.Diagnostics;//引入Process 类 声明 复制代码 代码如下: private Process[] MyProcesses; 主要处理部分,该段代码可放在定时器中循环检测监控的程序是否启动 复制代码 代码如下: MyProcesses

  • asp.net中C#实现手动回收内存的方法

    C#有自动回收内存的机制,但是有时自动回收有一定滞后,需要在变量使用后迅速回收,节约内存,这里介绍一个最简单的方法. 1.先对对象赋值 null; 2.使用System.GC.Collect() 复制代码 代码如下: class Program {          static void Main(string[] args)          {              long lenth = 1024 * 1024 * 128;                GetCost("程序启动

  • C#实现Xml序列化与反序列化的方法

    本文实例讲述了C#实现Xml序列化与反序列化的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: /// <summary> /// Xml序列化与反序列化 /// </summary> public class XmlUtil { public static string GetRoot(string xml) {     XmlDocument doc = new XmlDocument();     doc.LoadXml(xml.Replace("

  • C/C++中extern "C" 的作用分析

    我们经常会在C/C++程序中见到extern "C",这是一个很重要的概念.本文就来以实例形式讲述C/C++中extern "C"的作用.分享给大家供大家参考之用.具体分析如下: 作用:实现C和C++混合编程. 原理:C和C++编译器编译之后,函数名会编译成不同的名字,链接阶段名字查找会找不到目标,后面实例中会详解. 用法: ①.c文件中定义的函数,.cpp文件要调用时,该.cpp文件中要用extern "C"声明该函数: ②.反过来,.cpp文

  • 从汇编看c++中extern关键字的使用

    在c++中,extern关键字用来声明变量和函数,在声明函数的时候,有和没有extern的效果一样,即下面两条语句具有同样的效果: 复制代码 代码如下: extern void fun(); void fun(); 但是对于变量,有和没有extern就有区别,当有extern时,只是告知编译器存在这个变量,编译器并不为该变量分配存储空间,即真正的声明:若没有extern,则在声明的同时,编译器也为该变量分配存储空间. 下面是有extern的情形时的c++源码: 复制代码 代码如下: int ma

  • asp.net中c#自定义事件的实现方法详解

    本文实例讲述了asp.net中c#自定义事件的实现方法.分享给大家供大家参考.具体分析如下: c#自定义事件分为六步,声明关于事件的委托,声明事件,编写引发事件的函数,事件处理,这里我们就来具体的介绍一下. C#自定义事件的具体实现步骤如下: 1.声明一个delegate: (用于事件的类型的定义) 如: 复制代码 代码如下: public delegate void 事件名称EventHandler(object serder, EventArgs e); 事件名称用你的自己的来代替,随后的E

随机推荐