Score:0

จะแทรก Data Field Table SQL Server จาก SQL Server อื่นใน ip ที่แตกต่างจาก Ubuntu 20.04 ได้อย่างไร

ธง in

ฉันต้องการความช่วยเหลือในการแทรกข้อมูลจาก ip เซิร์ฟเวอร์ sql หนึ่งไปยัง ip เซิร์ฟเวอร์ sql อื่น ฉันได้ลองใช้ sqlcmd แล้ว แต่มันใช้งานไม่ได้เหมือน mysql ไวยากรณ์บน bash ซึ่งสามารถแทรกข้อมูลโดยใช้ไฟล์ csv หรือ txt หลังจากที่ฉันจัดการข้อมูลด้วย awk

ในกรณีนี้มี 2 ตารางและ 2 IP:

  • ตาราง A (ฟิลด์: A1,A2,A3,A4,A5) บน IP 22
  • ตาราง B (ฟิลด์: B1,B2,B3,..., Bn) บน IP 23
  • ฉันต้องแทรกข้อมูลแบบนี้ (A1 ถึง B2) ฉันต้องเรียกใช้ด้วย taskcheduler หรือ crontab

ฉันหวังว่าจะมีคนช่วยฉันในกรณีของฉัน

David avatar
cn flag
สิ่งนี้เกี่ยวข้องกับ Ubuntu หรือไม่ ฉันไม่เห็นการอ้างอิงใด ๆ ยกเว้นในชื่อของคุณ ไม่มีรุ่นไม่มีรายละเอียดอะไรเลย
Preman Terminal avatar
in flag
@David ฉันใช้ Ubuntu เวอร์ชัน 20.04 เพื่อโทรและส่งข้อมูลจากเซิร์ฟเวอร์ sql รายละเอียดอะไรที่คุณต้องการให้ฉันช่วย?
in flag
คุณอาจจะต้องการเรียนรู้เกี่ยวกับ Python สักเล็กน้อย เพราะนั่นจะทำให้คุณสามารถสร้างสคริปต์ที่สามารถอ่านจากเซิร์ฟเวอร์หนึ่งและเขียนไปยังอีกเซิร์ฟเวอร์หนึ่งได้ เมื่อเขียนแล้ว คุณสามารถเรียกใช้สคริปต์นั้นด้วย crontab มีตัวอย่างมากมายในการเขียนเครื่องมือ Python ที่อ่านและเขียนไปยัง SQL Server บน Stack Overflow
ch flag
คุณบอกว่าคุณได้ลองใช้ sqlcmd แล้ว โปรดอัปเดตคำถามของคุณด้วยการลองที่ไม่สำเร็จ
Preman Terminal avatar
in flag
@Serg ฉันไม่รู้วิธีส่งข้อมูลจากไฟล์ txt/csv ไปยังตาราง และหลังจากที่ฉันค้นหาใน google มี .sql ถึง db บน IP อื่นที่ไม่ได้มาจากไฟล์ .csv หรือ .txt ใน mysql เราเพียงแค่ต้องเรียกใช้ไวยากรณ์แทรก แต่ใน sqlcmd มันใช้งานไม่ได้เพราะในการรับข้อมูลเราใช้ไวยากรณ์ที่แตกต่างกันระหว่างเซิร์ฟเวอร์ sqlcmd และ sql นี่คือรหัสของฉันเพื่อรับข้อมูลจากตาราง: ``` sqlcmd -S IP -U sa -P รหัสผ่าน -d db -Q " เลือก * จาก VW_HRIS_ATT_TO_ASCEND" -o "absensi_pagi_${d}.csv" -s"|" -h-1 -ว ```
Preman Terminal avatar
in flag
@matigo โอเค ฉันจะลองกับ python คุณมีลิงค์คำแนะนำหรือโค้ดตัวอย่างไหม
Score:0
ธง in

ในที่สุดฉันก็พบวิธีแก้ปัญหานี้

ขั้นแรก รับข้อมูลจากตารางที่เราต้องการย้ายโดยใช้ sqlcmd

sqlcmd -S ipdb -U sa -P "passwordsa" -d dbname -Q "select * from tabelname" -o "direktori/file.csv" -s"," -W -w 700

และหลังจากที่เราปรับไฟล์ให้เข้ากับโครงสร้างของตารางเป้าหมายบนเซิร์ฟเวอร์ต่างๆ แล้ว เราส่งโดยใช้ไวยากรณ์ BCP และเก็บไว้ใน crontab สำหรับตัวกำหนดตารางเวลาการทำงาน

ชื่อตาราง bcp ใน ~/filename.txt -S localhost -U sa -P <your_password> -d ชื่อฐานข้อมูล -c -t ','

หรือเราจะอ่านก็ได้ ลิงค์

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา