没有密码访问数据库?

时间:2014-06-27 15:30:09

标签: php sql

我是SQL数据库的新手,想知道如果用户可以在不提供密码的情况下访问数据库。或者我必须传入一个空密码字段'PWD' => ''

删除了密码字段的示例代码:     

    $connInfo = array(
            'Database' => 'mystore',
            'UID' => 'admin_user',
            /*password field removed*/
            'ReturnDatesAsStrings' => true 
             );
    $connectString = sqlsrv_connect('some.sever.name', $connInfo) or die("Can't connect to the database");


    $query = 'SELECT * FROM products';
        $data = sqlsrv_query($connectString, $query) or die(print_r(sqlsrv_errors(SQLSRV_ERR_ALL), true));

        while ($row = sqlsrv_fetch_array($data))
        {
        //Graduate
        echo "<tr>";
            echo "  " .$row['NAME'] ."  -  " .$row['EMAIL'] ." ";
        echo "</tr><br>";   
        }
    sqlsrv_free_stmt($data);
    sqlsrv_free_stmt($query);
    ?>

我这样做是出于测试目的而不是将其上传到没有密码的网站。如果上述代码的语法有效,请告诉我吗?

2 个答案:

答案 0 :(得分:0)

只有两种方法可以连接到SQL数据库:

1)使用SQL密码,您需要在其中指定凭据

2)或使用域身份验证,其中凭据与您在PC中记录的凭据相同:      选项1:数据源= localhost; initial catalog = master; trusted connection = true      选项2:数据源= localhost; initial catalog = master;集成安全性= SSPI

但您可以查看以下链接,您可以在其中找到大多数数据库和所有连接变体的连接字符串:

http://www.connectionstrings.com/

的问候。 Majahide

答案 1 :(得分:0)

我认为你可以做你所说的最简单的方法是创建一个空字符串作为密码的用户。您可以直接在RDMBS管理员中执行此操作。

然而,从我个人的角度来看,这是一件非常愚蠢的事情:

  • 拥有该用户名的任何人都可以访问您的数据。即使您为此类用户名提供只读权限,也是不可取的。
  • 你做这种事的尝试只表示你是懒惰的,而你正试图走捷径,而不是遵循(基本)规则。

除此之外,不要让别人测试你的代码,而是自己动手。如果您对特定问题有任何具体问题,请随时提出。

最后注意事项:您的问题显示您正在使用SQL服务器...但您正在标记为MySQL ......是偶然的还是故意的?