我目前正在按照本教程构建一个使用Azure SQL数据库的Django Web应用程序:https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-python-ptvs-django-sql
我正在“配置项目”的步骤,我应该在settings.py中粘贴连接字符串。 (我正在使用Visual Studio,使用Python工具)。字符串采用以下格式:
Server=<ServerName>,<ServerPort>;Database=<DatabaseName>;User ID=<UserName>;Password={your_password_here};Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;
但是,当我尝试进行Django迁移时,语法错误无效。
使用Django / Azure SQL非常新,所以任何帮助都会受到赞赏。
答案 0 :(得分:0)
在Azure门户上,您可以获取SQL数据库的连接字符串,如下图所示。
对于Python中的Django /其他框架,您需要复制OBDC的连接字符串,如下所示。
Driver = {SQL Server的ODBC驱动程序13}; Server = tcp:&lt; server-host-name&gt; .database.windows.net,1433; Database = &lt; db -name&GT; 强>; UID = <强>&lt;使用者&GT; @&LT;服务器主机名称&gt;&GT; 强>; PWD = <强>&LT; your_password_here&GT; 强>;加密=是; TrustServerCertificate = no;连接超时= 30;
如果在VS中使用PTVS在Python中开发Django App,首先要在pyodbc
文件中添加所需的包requirements.txt
。您可以参考the section Managing Required Packages
of PTVS wiki page了解如何操作。
然后,您需要通过添加上面ODBC连接字符串中的连接信息来配置Django Web项目的settings.py
文件,如下所示。
DATABASES = {
'default': {
'ENGINE': 'sql_server.pyodbc',
'NAME': '<db-name>',
'USER': '<user>',
'PASSWORD': '<your_password_here>',
'HOST': '<server-host-name>',
'PORT': '1433',
'OPTIONS': {
'driver': 'ODBC Driver 13 for SQL Server',
'MARS_Connection': 'True',
}
}
}
以上所有这些都在the section Configure the Project
of the tutorial中介绍。 Django的这些连接配置信息与ADO.NET连接字符串中的相同。
希望它有所帮助。如有任何疑虑,请随时告诉我。