Ceisteanna Coitianta: Bunachair shonraí agus samhlachaLink to this heading
Conas is féidir liom a fheiceáil go bhfuil na ceisteanna SQL amh Django ag rith?Link to this heading
Cinntigh go bhfuil do shuíomh Django :setting:'DEBUG' socraithe go ''True''. Ansin déan é seo:
>>> from django.db import connection
>>> connection.queries
[{'sql': 'SELECT polls_polls.id, polls_polls.question, polls_polls.pub_date FROM polls_polls',
'time': '0.002'}]
Níl ''connection.queries'' ar fáil ach amháin má tá :setting:'DEBUG' is ''Fíor''. Is liosta foclóirí é in ord forghníomhú an fhiosraithe. Tá an méid seo a leanas i ngach foclóir:
''sql'' - An ráiteas SQL amh
''time'' - Cá fhad a thóg an ráiteas a fhorghníomhú, i soicindí.
Folaíonn ''connection.queries'' gach ráiteas SQL -- INSERTs, UPDATES, SELECTs, etc. Gach uair a bhuaileann d'aip an bunachar sonraí, déanfar an cheist a thaifeadadh.
Má tá tú ag úsáid :d oc:'ilbhunachair shonraí</topics/db/multi-db>', is féidir leat an comhéadan céanna a úsáid ar gach ball den fhoclóir ''naisc'':
>>> from django.db import connections
>>> connections["my_db_alias"].queries
Más gá duit an liosta ceisteanna a ghlanadh de láimh ag pointe ar bith i d'fheidhmeanna, glaoigh ar ''reset_queries()'', mar seo:
from django.db import reset_queries
reset_queries()
An féidir liom Django a úsáid le bunachar sonraí preexisting?Link to this heading
Tá. Féach :d oc:'Comhtháthú le bunachar sonraí oidhreachta </howto/legacy-databases>'.
Má dhéanaim athruithe ar mhúnla, conas is féidir liom an bunachar sonraí a nuashonrú?Link to this heading
Féach ar thacaíocht Django do:mod:'schema migrations <django.db.migrations>'.
Mura miste leat sonraí a ghlanadh, tá rogha :d jadmin:'flush' ag fóntais ''manage.py' do thionscadail chun an bunachar sonraí a athshocrú chuig an stát ina raibh sé díreach tar éis :d jadmin:'migrate' a fhorghníomhú.
An dtacaíonn samhlacha Django le heochracha bunscoile ilcholúin?Link to this heading
Partially. See Composite primary keys.
An dtacaíonn Django le bunachair shonraí NoSQL?Link to this heading
Ní thacaíonn Django féin go hoifigiúil le bunachair shonraí NoSQL. Tá roinnt tionscadal taobh agus forcanna ann, áfach, a cheadaíonn feidhmiúlacht NoSQL i Django.
Is féidir leat breathnú ar 'an leathanach wiki'_ a phléann roinnt tionscadal.
Conas is féidir liom roghanna a bhaineann go sonrach le bunachar sonraí a chur le mo ráitis CREATE TABLE, mar shampla MyISAM a shonrú mar an cineál tábla?Link to this heading
Déanaimid iarracht gan cásanna speisialta a chur leis an gcód Django chun freastal ar na roghanna go léir a bhaineann go sonrach le bunachar sonraí, mar shampla cineál tábla, etc. Más mian leat aon cheann de na roghanna seo a úsáid, imirce a chruthú le :class:'~django.db.migrations.operations.RunSQL' oibríocht ina bhfuil ráitis ''ALTER TABLE'' a dhéanann an méid is mian leat a dhéanamh.
Mar shampla, má tá MySQL á úsáid agat agus más mian leat do tháblaí an cineál tábla MyISAM a úsáid, bain úsáid as an SQL seo a leanas:
ALTER TABLE myapp_mytable ENGINE=MyISAM;