SQL Server 2000 ã«æ·»ä»ãããŠãããµã³ãã«ããŒã¿ããŒã¹ã§ãåºç瀟ã®ããŒã¿ãæš¡å£ãããã·ã³ãã«ãªæ§é ãæã€ããŒã¿ããŒã¹ã§ããNorthwind ããŒã¿ããŒã¹ã Adventure ããŒã¿ããŒã¹ãªã©ãšåæ§ãç°¡åãªãã¹ãçšã®ããŒã¿ããŒã¹ãšããŠå©çšãããŠããŸãããçŸåšã¯ GitHub äžã«ãŠã€ã³ã¹ããŒã«ã¹ã¯ãªããã MIT ã©ã€ã»ã³ã¹ã«ãŠå ¬éãããŠããŸãã
ãããã®ããŒã¿ããŒã¹ã¯éåžžã«ã·ã³ãã«ãªãããçŸåšã§ã䟿å©ã«å©çšã§ããŸããã»ããã¢ããã«ã¯ãã®ã¹ã¯ãªããã®äžéšãæžãæããã€ã³ã¹ããŒã«ã¹ã¯ãªããïŒpubs_azure_with_timestamp.sqlïŒãå©çšããŸããäž»ãªæžãæããã€ã³ãã¯ä»¥äžã® 2 ã€ã§ãã
- DB äœæåŠçãé€å»ïŒAzure SQL DB ã«å¯Ÿå¿ã§ããããã«ããããïŒ
- authors ããŒãã«ã«ã¿ã€ã ã¹ã¿ã³ãåãè¿œå ïŒæ¥œèŠ³åæå®è¡å¶åŸ¡ãçšããããŒã¿æŽæ°ã®äŸã瀺ãããïŒ
ããŒã¿ããŒã¹ã®äœæãããŒã¿ç·šéã«ã¯ãäœããã®ããŒã¿ããŒã¹ç®¡çããŒã«ãå¿ èŠã§ããSQL Server ããŒã¿ããŒã¹ã«çŽæ¥ã¢ã¯ã»ã¹ããŠã¹ããŒããããŒã¿ã確èªããããã®ããŒã«ãšããŠã¯ä»¥äžããããŸããããããå©çšããŠãæ§ããŸãããã以åãã SQL Server ãã䜿ãã®æ¹ã§ããã° SSMS ããæ°èŠã«å©çšãããæ¹ã§ããã° Azure Data Studio ããå©çšããã ããšãããšæããŸãã
- SSMS (SQL Server Management Studio)
- ADS (Azure Data Studio)
- VS Data Explorer (Visual Studio)
-
SSMS (SQL Server Management Studio)
æãããã SQL Server ã®ç®¡çããŒã«ã§ããSQL Server ã®ãã«ã»ããã®ç®¡çæ©èœãæäŸãããŸãããWindows ãã·ã³ã§ã®ã¿å©çšå¯èœã§ããããããããŠã³ããŒãã§ããŸãã
-
ADS (Azure Data Studio)
Windows, Linux, macOS ãªã©ã®ãã«ã OS ã«å¯Ÿå¿ããæ°ãã管çããŒã«ã§ããè¿ä»£çãªéçºã«å¯Ÿå¿ããŠããããœãŒã¹ã³ãŒãã³ã³ãããŒã«å¯Ÿå¿ãJupiter Notebook çµ±åãªã©ããµããŒããããŠããŸããããããããŠã³ããŒãã§ããŸãã
-
VS Data Explorer (Visual Studio)
Visual Studio ã«ã¯ããŒã¿ãšã¯ã¹ãããŒã©ãšåŒã°ããæ©èœãå«ãŸããŠããããããçšã㊠SQL Server ã®ç°¡æãªç®¡çãã§ããŸããäžèº«ã¯ SSMS ããéçºã«å¿ èŠãšãªãåºæ¬çãªããŒã¿æäœæ©èœãåãåºãããã®ããšèãããšããã§ããããVisual Studio ãå©çšããŠããå Žåã«ã¯ãã®ããŒã«ã§æžãŸããŠããŸã£ãŠããããšæããŸãã
ãŸããéçºçšã®ããŒã¿ããŒã¹ãµãŒããç«ãŠãå¿ èŠããããŸãããæ軜㫠SQL Server ãç«ãŠãäž»ãªæ¹æ³ãšããŠã¯ä»¥äžã®ãããªãã®ããããŸããïŒä»ã«ã SQL Server Express Edition ãªã©ããã€ãã®éžæè¢ããããŸãããããã§ã¯ä»¥äžã® 4 ã€ãã玹ä»ããããšã«ããŸããïŒ
-
ããŒã«ã«ãã·ã³ã« SQL Server ãç«ãŠã
éçºè åã SQL Server ã§ãã Developer Edition ãããŒã«ã«ãã·ã³ã«ã€ã³ã¹ããŒã«ããŠå©çšããæ¹æ³ã§ãã以åãã SQL Server ã䜿ãããŠããæ¹ã«ã¯æã銎æã¿ã®ããæ¹æ³ã ãšæããŸãã
-
SQL Server ã® Docker ã€ã¡ãŒãžãå©çšãã
Linux ç SQL Server ã¯ã€ã³ã¹ããŒã«æžã¿ Docker ã€ã¡ãŒãžãé åžãããŠããŸãããããå©çšãããšç°¡åã« SQL Server ãç«ãŠãããŸãã
-
ã«ã¹ã¿ã Docker ã€ã¡ãŒãžãäœæã»å©çšãã
åè¿°ã®æ¹æ³ã䟿å©ã§ããããã®æ¹æ³ã ãšãã³ã³ãããåé€ããŠäœãçŽããšããŸãæ¹ã㊠SQL Server ã®ã¯ãªãŒã³ã€ã³ã¹ããŒã«ã€ã¡ãŒãžã«ãµã³ãã« DB ãã»ããã¢ãããçŽãå¿ èŠãçããŸãããã®ãã Dockerfile ãå©çšããŠããã®ã»ããã¢ããåŠçãèªååããŠããŸãããšããæ¹æ³ããããŸãã
-
Azure SQL Database ãå©çšãã
æåŸã«ãAzure ãµãã¹ã¯ãªãã·ã§ã³ãæã£ãŠããå Žåã«ã¯ãããã« SQL ããŒã¿ããŒã¹ãç«ãŠãŠãããšäŸ¿å©ã§ããæãå°ãããµã€ãºã§äœæããŠããã°ã課éãå°ãªããŠæžã¿ãŸããçè ã¯è€æ°ã®ãµã³ãã«ã¢ããªããåäžã® DB ãå©çšãããããäž»ã«ãã®æ¹æ³ã䜿ã£ãŠããŸãã
以éã§ã¯ãåæ¹æ³ã§ããŒã¿ããŒã¹ãã»ããã¢ããããæ¹æ³ã解説ããŸãã
SQL Server ã«ã¯ãéçºã»ãã¹ãçšéãšããŠç¡åã§å©çšã§ãããéçºè ãšãã£ã·ã§ã³ïŒDeveloper EditionïŒãšåŒã°ãããã®ããããŸãããããããŒã«ã«ãã·ã³ã«ã€ã³ã¹ããŒã«ããŠå©çšããããšãã§ããŸãã以äžã«å ·äœçãªæ¹æ³ã瀺ããŸãã
- ãããã SQL Server Developer Edition ã®ã€ã³ã¹ããŒã©ãå ¥æããŸãã
- ã€ã³ã¹ããŒã©èµ·ååŸããã¡ãã£ã¢ã®ããŠã³ããŒãããéžæãããšãISO ã¡ãã£ã¢ãããŠã³ããŒãã§ããŸãã
- ããŠã³ããŒããã ISO ãããŠã³ããã管çè ã³ãã³ãã©ã€ã³ãã以äžã®ã³ãã³ãã§ã»ããã¢ããããŠãã ãããïŒãã¹ã¯ãŒã SAPWD ã¯è€éãªãã®ãå¿ èŠãªãããé©å®å€æŽããŠãã ããããŸãããŒã«ã«ç®¡çè ã¢ã«ãŠã³ã SQLSYSADMINACCOUNTS ã®åå㯠Administrator 以å€ã®å ŽåããããŸãã®ã§ãã¡ããé©å®å€æŽããŠãã ãããïŒ
setup.exe /Q /IACCEPTSQLSERVERLICENSETERMS /ACTION="install" /FEATURES=SQL,Tools /INSTANCENAME=MSSQLSERVER /SECURITYMODE=SQL /SAPWD=âXXXXXXXX" /SQLSVCACCOUNT="NT AUTHORITY\NETWORK SERVICE" /SQLSVCSTARTUPTYPE="Automatic" /SQLSYSADMINACCOUNTS=".\Administrator"
- ããŒã«ã«ãã·ã³ã«ã€ã³ã¹ããŒã«ãã SQL Server ã«å¯ŸããŠãSSMS ã ADS ãªã©ã®ããŒã«ããæ¥ç¶ããŸããäž»ãªèšå®é
ç®ã¯ä»¥äžã®éãã§ãã
- ãµãŒãå : localhost
- ãŠãŒã¶å : sa
- ãã¹ã¯ãŒã : ã»ããã¢ããæã®æå®å€
- ãµãŒã蚌ææžãä¿¡é Œãã (Trust Server Certificate) : ã¯ã
â» localhost ã§ã¢ã¯ã»ã¹ãè¡ãïŒãµãŒãåã䜿ã£ãŠããªãããããã®ãŸãŸã§ã¯éä¿¡æå·åã«å©çšãããµãŒãã®èšŒææžãä¿¡é Œã§ããŸããããã®ããããã®èšå®ã True ã«ããŠããŸãã
- æ¥ç¶åŸããµãŒããå³ã¯ãªãã¯ããæ°èŠ DB ãäœæããŸãã
- ããŒã¿ããŒã¹å : pubs
- äœæãã DB "pubs" ãéžæãããæ°ããã¯ãšãªããéžæããŸãã
- æ¥ç¶å
DB ã ("master" ã§ã¯ãªã) "pubs" ã«ãªã£ãŠããããšã確èªããäžã§ãã€ã³ã¹ããŒã«ã¹ã¯ãªããïŒ"pubs_azure_with_timestamp.sql"ïŒã®äžèº«ã貌ãä»ããŠå®è¡ããŠãã ããã
- 以äžã®æ¥ç¶æååãæžãæããŠå©çšããŠãã ããã
- äž»ãªæžãæãå Žæã¯ãã¹ã¯ãŒãã§ãã
- TrustServerCertificate ã True ã«èšå®ãããŠããããšã確èªããŠãã ããã
<add name="PubsConnection" providerName="System.Data.SqlClient" connectionString="Server=localhost;Initial Catalog=pubs;Persist Security Info=False;User ID=sa;Password=XXXXXXXX;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;ConnectRetryCount=3;ConnectRetryInterval=30;Connection Timeout=60;Language=Japanese;" />
{
"ConnectionStrings": {
"PubsDbContext": "Server=localhost;Initial Catalog=pubs;Persist Security Info=False;User ID=sa;Password=XXXXXXXX;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;"
}
}
ãªããSQL Server ã®ã¡ãã£ã¢ããã®æ¢å®ã®ã€ã³ã¹ããŒã«ã§ã¯ååä»ããã€ãæ¥ç¶ã®ã¿ãæå¹ã§ããããã®ååä»ããã€ãæ¥ç¶ã¯ããŒã«ã«ãã·ã³å ã§ã®éä¿¡ã«ããå©çšã§ããŸããããã®ããããã® SQL Server ã«å¯ŸããŠãªã¢ãŒããã·ã³ããæ¥ç¶ãããå Žåã«ã¯ãè¿œå ã§ä»¥äž 2 ã€ã®äœæ¥ãè¡ã£ãŠãã ããã
- SQL Server ãµãŒãã¹ãããŒãžã£ãã TCP æ¥ç¶ãæå¹å
ïŒâ» èšå®å€æŽåŸãSQL Server ãµãŒãã¹ã®åèµ·åãå¿ èŠïŒ - åœè©²ãã·ã³ã®ãã¡ã€ã¢ãŠã©ãŒã«èšå®ãå€æŽãã1433 ããŒããžã®çä¿¡ãèš±å¯
Linux ç SQL Server ã«é¢ããŠã¯ãã¯ãªãŒã³ã€ã³ã¹ããŒã«æžã¿ã® Docker ã€ã¡ãŒãžãé åžãããŠããŸãããããå©çšãããšç°¡åã« SQL Server ãç«ãŠãããŸãã
- Docker Desktop ãªã©ãå©çšããèªãã·ã³å ã« Docker ãã€ã³ã¹ããŒã«ããŸãã(WSL2 ãã€ã³ã¹ããŒã«ããŠãã®äžã« Docker ãç«ãŠãæ¹æ³ã§ãæ§ããŸããã)
- SQL Server ã®ã€ã¡ãŒãžã pull ããŠå®è¡ããŸããå®è¡ã®éãããã€ãã®ç°å¢å€æ°ãèšå®ããŸãã
- MSSQL_PID=Developerãããã«ãã Developer Edition çžåœãšããŠå©çšããããšãã§ããŸãã
- MSSQL_SA_PASSWORD=XXXXXXXXãããã«ã¯é©åã»è€éãªãã¹ã¯ãŒããèšå®ããŠãã ããã
sudo docker pull mcr.microsoft.com/mssql/server:2022-latest
sudo docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=XXXXXXXX" -e "MSSQL_PID=Developer" -e "MSSQL_TCP_PORT=1433" -p 1433:1433 --name sqlcontainer --hostname sqlserver -d mcr.microsoft.com/mssql/server:2022-latest
- èµ·ååŸãdocker ps -la ã§ã³ã³ãããæ£ããèµ·åããŠããããšã確èªããŠãã ããã
$ docker ps -la
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0bb86ab1ef97 mcr.microsoft.com/mssql/server:2022-latest "/opt/mssql/bin/permâŠ" 4 seconds ago Up 3 seconds 0.0.0.0:1433->1433/tcp, :::1433->1433/tcp sqlcontainer
- ããŒã«ã«ãã·ã³ã® Docker ã«ç«ãŠã SQL Server ã¯ãTCP 1433 ããŒãã§åäœããŠããŸããããã«å¯ŸããŠããŒã«ããæ¥ç¶ããŸãã
- ãµãŒãå : tcp:127.0.0.1,1433
- ãŠãŒã¶å : sa
- ãã¹ã¯ãŒã : ã»ããã¢ããæã®æå®å€
- Trust server certificate (ãµãŒã蚌ææžãä¿¡é Œãã) : True
â» localhost ã§ã¢ã¯ã»ã¹ãè¡ãïŒãµãŒãåã䜿ã£ãŠããªãããããã®ãŸãŸã§ã¯éä¿¡æå·åã«å©çšãããµãŒãã®èšŒææžãä¿¡é Œã§ããŸããããã®ããããã®èšå®ã True ã«ããŠããŸãã
- ãµãŒãã«å¯Ÿã㊠New Query ãéžæããŠä»¥äžãå®è¡ããŸãã
create database pubs
- ããŒã¿ããŒã¹ã "master" ãã "pubs" ã«åãæ¿ããŸãã
- æ¥ç¶å
DB ã "pubs" ã«ãªã£ãŠããããšã確èªããäžã§ãã€ã³ã¹ããŒã«ã¹ã¯ãªããïŒ"pubs_azure_with_timestamp.sql"ïŒã®äžèº«ã貌ãä»ããŠå®è¡ããŸãã
- 以äžã®æ¥ç¶æååãæžãæããŠå©çšããŠãã ããã
- äž»ãªæžãæãå Žæã¯ãã¹ã¯ãŒãã§ãã
- æ¥ç¶å ã¯ããŒã«ã«ãã·ã³ã® TCP 1433 ããŒãã«ãªããŸããlocalhost ãŸã㯠127.0.0.1 ã§ã¢ã¯ã»ã¹ãããããSQL Server ã®ãµãŒã蚌ææžãä¿¡é Œã§ããŸããããã®ãããTrustServerCertificate ã True ã«èšå®ããŠæ¥ç¶ããŸãã
<add name="PubsConnection" providerName="System.Data.SqlClient" connectionString="Server=tcp:127.0.0.1,1433;Initial Catalog=pubs;Persist Security Info=False;User ID=sa;Password=XXXXXXXX;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;ConnectRetryCount=3;ConnectRetryInterval=30;Connection Timeout=60;Language=Japanese;" />
{
"ConnectionStrings": {
"PubsDbContext": "Server=tcp:127.0.0.1,1433;Initial Catalog=pubs;Persist Security Info=False;User ID=sa;Password=XXXXXXXX;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;"
}
}
åè¿°ã®æ¹æ³ã¯ã¯ãªãŒã³ã€ã³ã¹ããŒã«ããã SQL Server ãçŽ æ©ãç«ãŠããããšããæå³ã§äŸ¿å©ã§ãããäžæ¹ãã³ã³ããã§ç«ãŠãå Žåã«ã¯ïŒä»®æ³ãã·ã³ãšããŠç«ãŠãå Žåãšç°ãªãåé€ã»äœãçŽãã䟿å©ãªããšããïŒãæ¯èŒçé »ç¹ã«ã³ã³ãããäœãçŽãããããšããã±ãŒã¹ãå€ããšæããŸãããããåè¿°ã®æ¹æ³ã§çšæããã³ã³ãããç«ãŠçŽããšãã¯ãªãŒã³ã€ã³ã¹ããŒã«ã®ç¶æ ã«æ»ã£ãŠããŸããããªãã¡ãµã³ãã« DB ãåã»ããã¢ããããå¿ èŠãçããŸãïŒåœããåã§ããïŒã
ãŸããéçºããŒã å ã®åéçºè ã® PC ããšã«ããŒã¿ããŒã¹ãç«ãŠããããªå Žåããåéçºè ã«ãã¡ãã¡ããŒã¿ããŒã¹ãã»ããã¢ãããããã®ã¯ãããã«é¢åã§ãã
ãã®ãããªå ŽåãDockerfile ãå©çšããŠããã®ã»ããã¢ããåŠçãèªååããŠããŸããšäŸ¿å©ã§ãã以éã«ãã®æ¹æ³ã解説ããŸãã
- 以äžã® Dockerfile ãäœæããŸãã
- SQL Server ã®ãã¹ã¯ãŒãïŒSA_PASSWORDïŒã¯è€éãªãã¹ã¯ãŒãã«å€æŽããŠãã ããã
- å®æœããŠããäœæ¥ã¯ä»¥äžã®éãã§ãã
- SQL Server ã«å¯ŸããŠäžããç°å¢å€æ°ãèšå®ããŠãããŸãã
- 以äžã®äžé£ã®äœæ¥ãè¡ãã·ã§ã«ã¹ã¯ãªãã sql-server-startup.sh ãäœæããŸãã
- SQL Server ãèµ·åããã
- sqlcmd ã³ãã³ããå©çšããŠãSQL Server ãèµ·åãããŸã§åŸ æ©ããã
- create database ã§ããŒã¿ããŒã¹ãäœæããã
- äœæããããŒã¿ããŒã¹ã«æ¥ç¶ããã€ã³ã¹ããŒã«ã¹ã¯ãªããïŒ"pubs_azure_with_timestamp.sql"ïŒã®äžèº«ãå®è¡ããã
- ïŒããŒã¿ããŒã¹ãçµäºããªãããã«ïŒãã°ãã³ã³ãœãŒã«ã«åºåãç¶ããã
- CMD åœä»€ã«ãããã³ã³ããèµ·åæã«äžèšã®ã·ã§ã«ã¹ã¯ãªãããå®è¡ãããããã«ä»èŸŒãã§ãããŸãã
FROM mcr.microsoft.com/mssql/server:2022-latest
ENV ACCEPT_EULA=Y
ENV SA_PASSWORD="XXXXXXXX"
ENV MSSQL_PID=Developer
ENV MSSQL_TCP_PORT=1433
# å¿
èŠãªãã¡ã€ã«ãã³ããŒ
COPY ./pubs_azure_with_timestamp.sql /tmp/
# SQL Serverèµ·åã¹ã¯ãªããã®äœæ
RUN echo '#!/bin/bash\n\
/opt/mssql/bin/sqlservr --accept-eula &' > /tmp/sql-server-startup.sh && \
echo 'until /opt/mssql-tools/bin/sqlcmd -S127.0.0.1 -Usa -P"${SA_PASSWORD}" -q"select 1" ; do sleep 5; done' >> /tmp/sql-server-startup.sh && \
echo '/opt/mssql-tools/bin/sqlcmd -S127.0.0.1 -Usa -P"${SA_PASSWORD}" -q"create database pubs;"' >> /tmp/sql-server-startup.sh && \
echo '/opt/mssql-tools/bin/sqlcmd -S127.0.0.1 -Usa -P"${SA_PASSWORD}" -d"pubs" -i"/tmp/pubs_azure_with_timestamp.sql"' >> /tmp/sql-server-startup.sh && \
echo 'tail -f /dev/null' >> /tmp/sql-server-startup.sh
# å®è¡æš©éã®ä»äž
RUN chmod +x /tmp/sql-server-startup.sh
# ã¹ã¯ãªããã®å®è¡
CMD /tmp/sql-server-startup.sh
- Dockerfile ãã»ããã¢ããã¹ã¯ãªããïŒpubs_azure_with_timestamp.sqlïŒãšåããã©ã«ãã«çœ®ããŠãã«ããè¡ããŸãã
# ã³ã³ããäœæ
docker build . -t pubs
- docker run ã³ãã³ãã§ã³ã³ãããèµ·åããŸãã
# ã³ã³ããèµ·å
docker run -p 1433:1433 --name pubs pubs:latest
- ã³ã³ããã¯ãã©ã¢ã°ã©ãŠã³ãã§åäœããããã«ããŠãããŸãããã®ãããã³ã³ãããåæ¢ãããå Žåã«ã¯ãå¥ã®ã³ãã³ãããã³ãããéãã以äžã®ã³ãã³ããå®è¡ããŸãã
# ã³ã³ããåé€ïŒå¥ãŠã£ã³ããŠããïŒ
docker kill pubs
docker rm pubs
- 以äžã®æ¥ç¶æååãæžãæããŠå©çšããŠãã ãããïŒåç¯ã®ã2. SQL Server ã® Docker ã€ã¡ãŒãžãå©çšããããšåãã§ããïŒ
- äž»ãªæžãæãå Žæã¯ãã¹ã¯ãŒãã§ãã
- æ¥ç¶å ã¯ããŒã«ã«ãã·ã³ã® TCP 1433 ããŒãã«ãªããŸããlocalhost ãŸã㯠127.0.0.1 ã§ã¢ã¯ã»ã¹ãããããSQL Server ã®ãµãŒã蚌ææžãä¿¡é Œã§ããŸããããã®ãããTrustServerCertificate ã True ã«èšå®ããŠæ¥ç¶ããŸãã
<add name="PubsConnection" providerName="System.Data.SqlClient" connectionString="Server=tcp:127.0.0.1,1433;Initial Catalog=pubs;Persist Security Info=False;User ID=sa;Password=XXXXXXXX;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;ConnectRetryCount=3;ConnectRetryInterval=30;Connection Timeout=60;Language=Japanese;" />
{
"ConnectionStrings": {
"PubsDbContext": "Server=tcp:127.0.0.1,1433;Initial Catalog=pubs;Persist Security Info=False;User ID=sa;Password=XXXXXXXX;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;"
}
}
1ïœ3 ã®æ¹æ³ã¯ããŒã«ã«ãã·ã³ã«ãã¹ãçšããŒã¿ããŒã¹ãµãŒããç«ãŠãæ¹æ³ã§ãããçè ã®ããã«æ§ã ãªãµã³ãã«ã¢ããªãäœæããŠããå Žåã«ã¯ããã®ã€ã©ãã¹ãçšã®ãµãŒããæºåããã®ã¯é¢åã§ãã
Azure ãµãã¹ã¯ãªãã·ã§ã³ãæã£ãŠããå Žåã«ã¯ãããã« SQL ããŒã¿ããŒã¹ãç«ãŠã£ã±ãªãã«ããŠãããšäŸ¿å©ã§ããæãå°ãããµã€ãºã§äœæããŠããã°ã課éãå°ãªããŠæžã¿ãŸãã
- Azure ããŒã¿ã«ãããSQL Server ïŒè«çãµãŒãïŒãäœæããŸãã
- äœæãã SQL ServerïŒè«çãµãŒãïŒäžã«ãpubs ããŒã¿ããŒã¹ãäœæããŸãã
- DB äœææã«ã以äžã®ããããã® SKU ãéžæãããšã³ã¹ããæããããšãã§ããŸãã
- è«çãµãŒããDB ããããã«å¯ŸããŠãçŸåšã®ã¯ã©ã€ã¢ã³ã IP ã¢ãã¬ã¹ããã®ã¢ã¯ã»ã¹ãèš±å¯ããŠãããŸãã
-
ã¯ã©ãŠãäžã® SQL ããŒã¿ããŒã¹ã«å¯ŸããŠç®¡çããŒã«ããæ¥ç¶ããŸãã
- ãµãŒãå : XXXX.database.windows.net ïŒè«çãµãŒãåãå©çšïŒ
- ãŠãŒã¶å : ã»ããã¢ããæã®æå®å€
- ãã¹ã¯ãŒã : ã»ããã¢ããæã®æå®å€
- æ¥ç¶å
ããŒã¿ããŒã¹å : pubs
â» æ£ãããµãŒãåïŒFQDNïŒã§ã¢ã¯ã»ã¹ããŸãã®ã§ããµãŒã蚌ææžã®åŒ·å¶ä¿¡é Œã®èšå®ã¯äžèŠã§ãã
-
äœæãã DB ãéžæãããæ°ããã¯ãšãªããéžæããŸãã
-
æ¥ç¶å DB ã "pubs" ã«ãªã£ãŠããããšã確èªããäžã§ãã€ã³ã¹ããŒã«ã¹ã¯ãªããïŒ"pubs_azure_with_timestamp.sql"ïŒã®äžèº«ã貌ãä»ããŠå®è¡ããŠãã ããã
- 以äžã®æ¥ç¶æååãæžãæããŠå©çšããŠãã ããã
- äž»ãªæžãæãå Žæã¯ãµãŒãåããŠãŒã¶åããã¹ã¯ãŒãã§ãã
- æ£ãã FQDN åã§ã¢ã¯ã»ã¹ãããããTrustServerCertificate 㯠False ã®ãŸãŸã§å€§äžå€«ã§ãã
<add name="PubsConnection" providerName="System.Data.SqlClient" connectionString="Server=tcp:XXXX.database.windows.net,1433;Initial Catalog=pubs;Persist Security Info=False;User ID=XXXXXXXX;Password=XXXXXXXX;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=3;ConnectRetryInterval=30;Connection Timeout=60;Language=Japanese;" />
{
"ConnectionStrings": {
"PubsDbContext": "Server=tcp:XXXX.database.windows.net,1433;Initial Catalog=pubs;Persist Security Info=False;User ID=XXXXXXXX;Password=XXXXXXXX;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
}
}
pubs ããŒã¿ããŒã¹ã¯éåžžã«å€ãããŒã¿ããŒã¹ã®ãããããŒãã«åããã£ãŒã«ãåã®åœåã«ãäžé©åãªéšåãæ°å€ãååšããŸããäŸãã°äžèšã¯ããŒã¿ããŒã¹å ã®æžç±ããŒãã«ïŒtitles ããŒãã«ïŒã§ãããäžè²«æ§ã®ãªãåœåèŠçŽãå€ãããã®ãŸãŸæ±ããšã¢ããªã±ãŒã·ã§ã³ã®å¯èªæ§ãèœã¡ãŸãã
ããã㯠Entity Framework ã«ãã£ãŠåžåããã®ãããããã§ããpubs.cs ãã¡ã€ã«ã«ã¯ãpubs ããŒã¿ããŒã¹ã®ããŒãã«å®çŸ©ã Entity Framework ã§æ±ããããã«å€æãããã®ãå«ãŸããŠããŸãããã®ãã¡ã€ã«ã Visual Studio ã§éãããããžã§ã¯ãã«è¿œå ããŠå©çšããŠãã ããã