亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

Jadual Kandungan
2. Sediakan struktur projek anda
3. Tentukan skema pangkalan data anda
4. Tulis pertanyaan SQL dengan komen khas
5. Konfigurasi SQLC.Yaml
6. Menjana kod Go
7. Gunakan kod yang dihasilkan dalam aplikasi anda
Petua dan amalan terbaik
Rumah pembangunan bahagian belakang Golang Cara Menggunakan SQLC untuk Menjana Kod SQL Jenis-selamat Di GO

Cara Menggunakan SQLC untuk Menjana Kod SQL Jenis-selamat Di GO

Sep 17, 2025 am 12:41 AM

  • Memasang alat SQLC CLI, disyorkan untuk menggunakan skrip curl atau homebrew; 2. Buat struktur projek, termasuk db/skema.sql (struktur jadual), db/query.sql (pertanyaan anotasi), dan fail konfigurasi sqlc.yaml; 3. Tentukan jadual pangkalan data dalam skema.sql; 4. Tulis pertanyaan SQL dengan - Nama: Komen dan: EXEC/: One/: Banyak arahan dalam query.sql; 5. Konfigurasi SQLC.YAML untuk menentukan laluan pakej, fail pertanyaan, fail skema, enjin pangkalan data dan pilihan generasi; 6. Jalankan SQLC menjana untuk menjana kod GO-SAFE, termasuk model, kaedah pertanyaan dan antara muka; 7. Gunakan kod yang dihasilkan untuk memanipulasi pangkalan data dalam aplikasi anda, nikmati kelebihan pemeriksaan masa kompilasi dan kesilapan runtime sifar, dan gunakan parameter yang dinamakan melalui @Param, nama medan kawalan melalui alias lajur, dan mengintegrasikan langkah-langkah generasi ke dalam proses membina untuk memastikan mereka disegerakkan.
  • Cara Menggunakan SQLC untuk Menjana Kod SQL Jenis-selamat Di GO

    Menggunakan sqlc untuk menghasilkan kod SQL yang selamat jenis di GO adalah cara yang kuat untuk menulis interaksi pangkalan data tanpa mengorbankan prestasi atau keselamatan. Daripada menulis kod ORM boilerplate atau berurusan dengan pertanyaan SQL mentah yang terdedah kepada kesilapan runtime, sqlc menyusun pertanyaan SQL anda ke dalam kod GO-SAFE pada masa membina. Berikut adalah cara untuk menetapkannya dan menggunakannya dengan berkesan.

    Cara Menggunakan SQLC untuk Menjana Kod SQL Jenis-selamat Di GO

    1. Pasang SQLC

    Pertama, pasang alat sqlc CLI. Anda boleh menggunakan salah satu kaedah berikut:

     # Menggunakan skrip curl dan pasang (disyorkan)
    Curl https://sqlc.dev/install.sh | sh
    
    # Atau menggunakan homebrew (macOS)
    Brew Install SQLC

    Sahkan pemasangan:

    Cara Menggunakan SQLC untuk Menjana Kod SQL Jenis-selamat Di GO
     Versi SQLC

    2. Sediakan struktur projek anda

    Persediaan biasa termasuk:

     projek anda/
    ├── db/
    │ ├── query.sql
    │ └── Skema.sql
    ├── sqlc.yaml
    └── Go.mod
    • db/schema.sql : Mengandungi skema pangkalan data anda (jadual, indeks).
    • db/query.sql : Mengandungi pertanyaan SQL anda.
    • sqlc.yaml : Fail konfigurasi untuk SQLC.

    Pastikan anda mempunyai fail go.mod yang dimulakan:

    Cara Menggunakan SQLC untuk Menjana Kod SQL Jenis-selamat Di GO
     Go Mod init-Nama Projek Anda

    3. Tentukan skema pangkalan data anda

    Dalam db/schema.sql , tentukan jadual anda. Contohnya:

     Buat pengarang jadual (
      Kunci utama ID Bigserial,
      Nama teks tidak batal,
      teks bio
    );

    4. Tulis pertanyaan SQL dengan komen khas

    Dalam db/query.sql , tulis pertanyaan anda menggunakan khas -- name: Komen So SQLC boleh menghasilkan fungsi.

     - Nama: CreateAuthor: EXEC
    Masukkan ke dalam nilai penulis (nama, bio) ($ 1, $ 2);
    
    - Nama: GetAuthor: Satu
    Pilih * dari pengarang di mana id = $ 1;
    
    - Nama: ListAuthors: Banyak
    Pilih * dari pesanan penulis dengan nama;

    Inilah maksud anotasi:

    • :exec - Query Executes tetapi mengembalikan tiada hasil (misalnya, masukkan).
    • :one - mengharapkan satu baris (mengembalikan struktur).
    • :many - mengembalikan sifar atau lebih baris (mengembalikan sepotong structs).

    5. Konfigurasi SQLC.Yaml

    Buat sqlc.yaml dalam root projek anda:

     Versi: "2"
    Pakej:
      - Nama: "DB"
        Laluan: "DB"
        Pertanyaan: "db/query.sql"
        Skema: "DB/Schema.sql"
        Enjin: "PostgreSQL"
        EMIT_JSON_TAGS: Benar
        eMit_Prepared_queries: palsu
        EMIT_INTERFACE: Benar
        EMIT_EXACT_TABLE_NAMES: Benar

    Pilihan Utama:

    • engine : Gunakan "postgresql" atau "mysql" .
    • emit_json_tags : Menambah json: Tag ke Struktur untuk kegunaan API.
    • emit_interface : Menjana antara muka untuk kaedah pertanyaan anda (berguna untuk mengejek).
    • emit_exact_table_names : Menggunakan nama meja yang tepat dan bukannya pluralisasi.

    6. Menjana kod Go

    Jalankan SQLC untuk menjana kod Go:

     SQLC menjana

    Ini mewujudkan fail GO dalam direktori db/ , seperti:

    • db.go - Mengandungi Queries Struktur dan antara muka.
    • models.go - Mengandungi GO Structs dipetakan ke meja anda.
    • query.go - Mengandungi kaedah yang dihasilkan seperti CreateAuthor , GetAuthor , dll.

    Contoh tandatangan fungsi yang dihasilkan:

     Func (Q *Queries) CreateAuthor (ctx context.context, name string, bio sql.nullstring) ralat

    7. Gunakan kod yang dihasilkan dalam aplikasi anda

    Sekarang gunakan kod yang dihasilkan di aplikasi Go anda:

     Pakej utama
    
    import (
      "Konteks"
      "Pangkalan Data/SQL"
      "Log"
    
      _ "github.com/lib/pq"
      "Projek anda/db"
    )
    
    func main () {
      conn, err: = sql.open ("postgres", "user = pascgres password = rahsia dbName = contoh sslmode = disable")
      jika err! = nil {
        log.fatal (err)
      }
      menangguhkan conn.close ()
    
      db: = db.new (conn)
    
      // Masukkan pengarang baru
      err = db.createAuthor (context.background (), "alice", sql.nullstring {string: "tech writer", sah: true})
      jika err! = nil {
        log.fatal (err)
      }
    
      // pertanyaan satu pengarang
      pengarang, err: = db.getAuthor (context.background (), 1)
      jika err! = nil {
        log.fatal (err)
      }
      log.printf ("Pengarang: %s", pengarang.name)
    }

    Petua dan amalan terbaik

    • Gunakan Parameter Dinamakan (Pilihan) : SQLC menyokong sintaks @param untuk kejelasan:

       - Nama: GetAuthorByNames: Banyak
      Pilih * dari pengarang di mana nama = @name atau bio = @bio;

      Menjana: func (q *Queries) GetAuthorByNames(ctx context.Context, arg GetAuthorByNamesParams) ([]Author, error)

    • Sesuaikan nama medan struktur : Gunakan alias lajur dalam pilih untuk mengawal nama medan:

       - Nama: GetAuthorWithalias: Satu
      Pilih ID, Nama sebagai FullName dari penulis di mana id = $ 1;

      → Menjana struktur dengan FullName string .

    • Simpan skema dan pertanyaan dalam penyegerakan : SQLC mengesahkan pertanyaan terhadap skema anda pada masa kompilasi - lajur atau jenis yang tidak sesuai akan gagal.

    • Regenerate pada Perubahan : Tambah sqlc generate saluran paip binaan anda atau gunakan pemerhati fail semasa pembangunan.


    • Menggunakan sqlc memberi anda kuasa penuh SQL dengan keselamatan sistem jenis GO. Anda mengelakkan kesilapan SQL runtime, mengurangkan boilerplate, dan mengekalkan prestasi tinggi. Ia amat berguna untuk aplikasi sederhana dan besar di mana penyelenggaraan dan ketepatan perkara.

      Pada asasnya, tulis SQL, jalankan sqlc generate , dan pergi.

      Atas ialah kandungan terperinci Cara Menggunakan SQLC untuk Menjana Kod SQL Jenis-selamat Di GO. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

    Kenyataan Laman Web ini
    Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

    Alat AI Hot

    Undress AI Tool

    Undress AI Tool

    Gambar buka pakaian secara percuma

    Undresser.AI Undress

    Undresser.AI Undress

    Apl berkuasa AI untuk mencipta foto bogel yang realistik

    AI Clothes Remover

    AI Clothes Remover

    Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

    Stock Market GPT

    Stock Market GPT

    Penyelidikan pelaburan dikuasakan AI untuk keputusan yang lebih bijak

    Alat panas

    Notepad++7.3.1

    Notepad++7.3.1

    Editor kod yang mudah digunakan dan percuma

    SublimeText3 versi Cina

    SublimeText3 versi Cina

    Versi Cina, sangat mudah digunakan

    Hantar Studio 13.0.1

    Hantar Studio 13.0.1

    Persekitaran pembangunan bersepadu PHP yang berkuasa

    Dreamweaver CS6

    Dreamweaver CS6

    Alat pembangunan web visual

    SublimeText3 versi Mac

    SublimeText3 versi Mac

    Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

    Topik panas

    Bagaimana anda membaca dan menulis fail di Golang? Bagaimana anda membaca dan menulis fail di Golang? Sep 21, 2025 am 01:59 AM

    Goprovidessimpleandefficientfilehandlingingtheosandbufiopackages.toreadasmallfileentirely, useos.readfile, whittloadsthecontentintomemorysafelyandautomatikManageSoperations.forlargefilesorincrementalprementalprementalprementrementprementalplocessing,

    Apakah struct struktur kosong {} yang digunakan di Golang Apakah struct struktur kosong {} yang digunakan di Golang Sep 18, 2025 am 05:47 AM

    Struct {} adalah struktur tanpa medan di GO, yang menduduki bait sifar dan sering digunakan dalam senario di mana data tidak diperlukan. Ia digunakan sebagai isyarat dalam saluran, seperti penyegerakan goroutine; 2. Digunakan sebagai koleksi jenis nilai peta untuk mencapai pemeriksaan kewujudan utama dalam ingatan yang cekap; 3. Penerima kaedah tanpa stateless yang pasti, sesuai untuk suntikan pergantungan atau fungsi organisasi. Jenis ini digunakan secara meluas untuk mengekspresikan aliran kawalan dan niat yang jelas.

    Bagaimana anda mengendalikan penutupan anggun dalam aplikasi Golang? Bagaimana anda mengendalikan penutupan anggun dalam aplikasi Golang? Sep 21, 2025 am 02:30 AM

    Anggap yang mengasyik,

    Apa itu CGO dan bila menggunakannya di Golang Apa itu CGO dan bila menggunakannya di Golang Sep 21, 2025 am 02:55 AM

    Cgoenablesgotocallccode, membolehkanIntegrationWithClibrariesLikeopenssl, AccessTolow-levelsystemapi, danPerformanceoptimization; iTrequiresimporting "C" withcheadersincomments, usesc.function () syntax, dandemandscareffemoryMangage

    Cara Membaca Konfigurasi Dari Fail di Golang Cara Membaca Konfigurasi Dari Fail di Golang Sep 18, 2025 am 05:26 AM

    Gunakan pakej pengekodan/json perpustakaan standard untuk membaca fail konfigurasi JSON; 2. Gunakan perpustakaan Gopkg.in/yaml.v3 untuk membaca konfigurasi format YAML; 3. Gunakan Perpustakaan OS.Getenv atau Godotenv untuk menimpa konfigurasi fail; 4. Gunakan perpustakaan Viper untuk menyokong fungsi lanjutan seperti konfigurasi pelbagai format, pembolehubah persekitaran, tambah nilai automatik; Adalah perlu untuk menentukan struktur untuk memastikan keselamatan jenis, mengendalikan kesilapan fail dan parsing dengan betul, menggunakan medan pemetaan tag struktur dengan betul, mengelakkan laluan berkod keras, dan mengesyorkan menggunakan pembolehubah persekitaran atau penyimpanan konfigurasi yang selamat dalam persekitaran pengeluaran. Ia boleh bermula dengan JSON yang mudah dan berhijrah ke Viper apabila keperluannya kompleks.

    Pakej STRCONV Pergi: Postur yang betul untuk integer ke penukaran rentetan dan kesilapan itoa64 Pakej STRCONV Pergi: Postur yang betul untuk integer ke penukaran rentetan dan kesilapan itoa64 Sep 21, 2025 am 08:36 AM

    Artikel ini bertujuan untuk menyelesaikan kesilapan "undefined" yang ditemui dalam GO ketika cuba menggunakan strconv.itoa64 untuk penukaran integer-to-string. Kami akan menjelaskan mengapa Itoa64 tidak wujud dan memberi butiran mengenai alternatif yang betul kepada strconv.FormatInt dalam pakej STRCONV. Melalui kod contoh, pembaca akan belajar bagaimana untuk menukarkan jenis integer secara efisien dan tepat ke dalam perwakilan rentetan dalam partisi tertentu, elakkan perangkap pengaturcaraan biasa dan meningkatkan kekukuhan kod dan kebolehbacaan.

    Cara Menggunakan SQLC untuk Menjana Kod SQL Jenis-selamat Di GO Cara Menggunakan SQLC untuk Menjana Kod SQL Jenis-selamat Di GO Sep 17, 2025 am 12:41 AM

    Pasang alat SQLCCLI, disarankan untuk menggunakan skrip curl atau homebrew; 2. Buat struktur projek, termasuk db/skema.sql (struktur jadual), db/query.sql (pertanyaan anotasi) dan fail konfigurasi sqlc.yaml; 3. Tentukan jadual pangkalan data dalam skema.sql; 4. Tulis pertanyaan SQL dengan -nama: anotasi dan: exec/: one/: banyak arahan dalam query.sqlc.yaml; 5. Konfigurasi SQLC.YAML untuk menentukan laluan pakej, fail pertanyaan, fail skema, enjin pangkalan data dan pilihan generasi; 6. Jalankan SQLCGenerate untuk menjana kod Go Type-Safe, termasuk model, kaedah pertanyaan dan antara muka

    Cara Membuat Marshaller/Unmarshaller tersuai untuk JSON di Golang Cara Membuat Marshaller/Unmarshaller tersuai untuk JSON di Golang Sep 19, 2025 am 12:01 AM

    Melaksanakan Serialization JSON dan deserialization struktur GO yang disesuaikan untuk Marshaljson dan Unmarshaljson, sesuai untuk mengendalikan format bukan standard atau serasi dengan data lama. 2. Mengawal struktur output melalui Marshaljson, seperti format medan menukar; 3. Parsing data format khas melalui Unmarshaljson, seperti tarikh tersuai; 4. Beri perhatian untuk mengelakkan gelung tak terhingga yang disebabkan oleh panggilan rekursif, dan gunakan alias jenis untuk memintas kaedah tersuai.

    See all articles