可以';t使用Visual Studio 2013在SQL Server 2014中插入或删除记录

本文关键字:2014 Server SQL 插入 记录 删除 2013 使用 Studio Visual 可以 | 更新日期: 2023-09-27 18:26:35

上下文

我使用的是Visual Studio 2013,我创建了一个ADO.Net实体数据模型,该模型连接到我的SQL Server 2014数据库。

我可以使用RESTful服务检索数据并显示它。

问题

但我不能在任何表中插入数据(也可以删除和编辑)。

我的连接是否设置为只读模式?我查看了数据库的属性,但没有任何内容指向该选项。

有什么帮助吗?!

编辑:

这是我的WCF服务代码。下面是Create()主体:

using (OnlinestoreEntities ose = new OnlinestoreEntities())
{
    try
    {
        UserEntity user = new UserEntity();
        user.Id = _user.Id;
        user.Name = _user.Name;
        user.Password = _user.Password;
        user.Email = _user.Email;
        ose.UserEntities.Add(user);
        ose.SaveChanges();
        return true;
    }
    catch
    {
        return false;
    }
};

以下代码是客户端的Create()(使用MVS模型),当点击Add User链接时,会从控制器调用此函数:

public bool Create(User user)
{
    try
    {
        var webClient = new WebClient();
        DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(User));
        MemoryStream mem = new MemoryStream();
        ser.WriteObject(mem, user);
        string data = Encoding.UTF8.GetString(mem.ToArray(), 0, (int)mem.Length);
        webClient.Headers["Content-type"] = "application/json";
        webClient.Encoding = Encoding.UTF8;
        String str = webClient.UploadString(BASE_URL + "create", "POST", data);
        return true;
    }
    catch
    {
        return false;
    }
}

你还需要任何细节吗,我以为问题是关于数据库设置的?!

可以';t使用Visual Studio 2013在SQL Server 2014中插入或删除记录

看起来用于连接SQL数据库的用户名具有只读访问权限。您应该使用其他具有DML操作权限的用户名。

如果您没有其他用户名,则必须联系SQL server 的DBA

编辑

安装SQL server时,您可以选择配置如何对SQL server进行身份验证(即Windows身份验证模式或混合模式)。我更喜欢混合模式。

然后,在选择混合模式后,您必须配置您的"SA"密码。

对我来说,它看起来像是你在使用windows身份验证,只有你有管理员访问权限,其他人都配置为只读。

在IIS中部署ASP.Net应用程序时。默认情况下,它需要AppPoolIdentity来打开SQL连接,而SQL连接没有任何权限执行DML操作