This commit is contained in:
Executable
+171
@@ -0,0 +1,171 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ==============================================================================
|
||||
# Database Sample Export Script (LOKAL VERSİYON)
|
||||
# Bu script önemli tablolardan örnek veri çeker ve mds/DATABASE_SAMPLES.md'ye yazar
|
||||
# AI asistanların veritabanı yapısını anlaması için kullanılır
|
||||
# ==============================================================================
|
||||
|
||||
# Kullanım:
|
||||
# 1. Önce SSM port forwarding başlat: dbconnect
|
||||
# 2. Yeni terminal aç ve çalıştır: bash scripts/export-db-samples.sh
|
||||
|
||||
OUTPUT_FILE="mds/DATABASE_SAMPLES.md"
|
||||
DB_HOST="localhost"
|
||||
DB_PORT="15432"
|
||||
DB_USER="suggestbet"
|
||||
DB_NAME="boilerplate_db"
|
||||
PGPASSWORD="SuGGesT2026SecuRe"
|
||||
|
||||
export PGPASSWORD
|
||||
|
||||
# Veritabanı bağlantı kontrolü
|
||||
if ! psql -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -c "SELECT 1" > /dev/null 2>&1; then
|
||||
echo "❌ Veritabanına bağlanılamadı!"
|
||||
echo "📌 Önce SSM port forwarding başlat: dbconnect"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "📊 Veritabanı örnekleri çekiliyor..."
|
||||
|
||||
# Tarih
|
||||
CURRENT_DATE=$(date '+%Y-%m-%d %H:%M')
|
||||
|
||||
# Markdown dosyasını oluştur
|
||||
cat > $OUTPUT_FILE << EOF
|
||||
# Database Sample Data
|
||||
|
||||
Bu dosya AI asistanların veritabanı yapısını anlaması için örnek veriler içerir.
|
||||
**Son Güncelleme:** $CURRENT_DATE
|
||||
|
||||
> ⚠️ Bu dosya otomatik oluşturulmuştur. Elle düzenlemeyin.
|
||||
> Script: \`scripts/export-db-samples.sh\`
|
||||
|
||||
---
|
||||
|
||||
## 📈 Tablo İstatistikleri
|
||||
|
||||
| Tablo | Kayıt Sayısı |
|
||||
|-------|-------------|
|
||||
EOF
|
||||
|
||||
# Tablo sayılarını çek
|
||||
for table in countries leagues teams players matches predictions odd_categories odd_selections match_team_stats live_matches users app_settings; do
|
||||
count=$(psql -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -t -c "SELECT COUNT(*) FROM $table;" 2>/dev/null | tr -d ' ')
|
||||
if [ -n "$count" ]; then
|
||||
echo "| $table | $count |" >> $OUTPUT_FILE
|
||||
fi
|
||||
done
|
||||
|
||||
echo "" >> $OUTPUT_FILE
|
||||
echo "---" >> $OUTPUT_FILE
|
||||
echo "" >> $OUTPUT_FILE
|
||||
|
||||
# Örnek veriler
|
||||
echo "## 🏟️ Matches (Son 5 Maç)" >> $OUTPUT_FILE
|
||||
echo '```json' >> $OUTPUT_FILE
|
||||
psql -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -t -c "
|
||||
SELECT json_agg(t) FROM (
|
||||
SELECT id, match_name, sport, score_home, score_away, state,
|
||||
to_timestamp(mst_utc/1000) as match_time
|
||||
FROM matches
|
||||
ORDER BY mst_utc DESC
|
||||
LIMIT 5
|
||||
) t;" 2>/dev/null >> $OUTPUT_FILE
|
||||
echo '```' >> $OUTPUT_FILE
|
||||
echo "" >> $OUTPUT_FILE
|
||||
|
||||
echo "## 🏆 Leagues (İlk 10)" >> $OUTPUT_FILE
|
||||
echo '```json' >> $OUTPUT_FILE
|
||||
psql -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -t -c "
|
||||
SELECT json_agg(t) FROM (
|
||||
SELECT id, name, sport, country_id
|
||||
FROM leagues
|
||||
LIMIT 10
|
||||
) t;" 2>/dev/null >> $OUTPUT_FILE
|
||||
echo '```' >> $OUTPUT_FILE
|
||||
echo "" >> $OUTPUT_FILE
|
||||
|
||||
echo "## ⚽ Teams (İlk 10)" >> $OUTPUT_FILE
|
||||
echo '```json' >> $OUTPUT_FILE
|
||||
psql -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -t -c "
|
||||
SELECT json_agg(t) FROM (
|
||||
SELECT id, name, sport, logo_url
|
||||
FROM teams
|
||||
LIMIT 10
|
||||
) t;" 2>/dev/null >> $OUTPUT_FILE
|
||||
echo '```' >> $OUTPUT_FILE
|
||||
echo "" >> $OUTPUT_FILE
|
||||
|
||||
echo "## 🌍 Countries (İlk 10)" >> $OUTPUT_FILE
|
||||
echo '```json' >> $OUTPUT_FILE
|
||||
psql -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -t -c "
|
||||
SELECT json_agg(t) FROM (
|
||||
SELECT id, name, flag_url
|
||||
FROM countries
|
||||
LIMIT 10
|
||||
) t;" 2>/dev/null >> $OUTPUT_FILE
|
||||
echo '```' >> $OUTPUT_FILE
|
||||
echo "" >> $OUTPUT_FILE
|
||||
|
||||
echo "## 🎯 Predictions (Son 5)" >> $OUTPUT_FILE
|
||||
echo '```json' >> $OUTPUT_FILE
|
||||
psql -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -t -c "
|
||||
SELECT json_agg(t) FROM (
|
||||
SELECT match_id, prediction_json, created_at
|
||||
FROM predictions
|
||||
ORDER BY created_at DESC
|
||||
LIMIT 5
|
||||
) t;" 2>/dev/null >> $OUTPUT_FILE
|
||||
echo '```' >> $OUTPUT_FILE
|
||||
echo "" >> $OUTPUT_FILE
|
||||
|
||||
echo "## 📊 Match Team Stats (Örnek 5)" >> $OUTPUT_FILE
|
||||
echo '```json' >> $OUTPUT_FILE
|
||||
psql -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -t -c "
|
||||
SELECT json_agg(t) FROM (
|
||||
SELECT match_id, team_id, possession_percentage, shots_on_target,
|
||||
shots_off_target, corners, fouls
|
||||
FROM match_team_stats
|
||||
LIMIT 5
|
||||
) t;" 2>/dev/null >> $OUTPUT_FILE
|
||||
echo '```' >> $OUTPUT_FILE
|
||||
echo "" >> $OUTPUT_FILE
|
||||
|
||||
echo "## 💰 Odd Categories (Örnek 5)" >> $OUTPUT_FILE
|
||||
echo '```json' >> $OUTPUT_FILE
|
||||
psql -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -t -c "
|
||||
SELECT json_agg(t) FROM (
|
||||
SELECT db_id, match_id, name, category_json_id
|
||||
FROM odd_categories
|
||||
LIMIT 5
|
||||
) t;" 2>/dev/null >> $OUTPUT_FILE
|
||||
echo '```' >> $OUTPUT_FILE
|
||||
echo "" >> $OUTPUT_FILE
|
||||
|
||||
echo "## 🎰 Odd Selections (Örnek 10)" >> $OUTPUT_FILE
|
||||
echo '```json' >> $OUTPUT_FILE
|
||||
psql -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -t -c "
|
||||
SELECT json_agg(t) FROM (
|
||||
SELECT db_id, odd_category_db_id, name, odd_value, position
|
||||
FROM odd_selections
|
||||
LIMIT 10
|
||||
) t;" 2>/dev/null >> $OUTPUT_FILE
|
||||
echo '```' >> $OUTPUT_FILE
|
||||
echo "" >> $OUTPUT_FILE
|
||||
|
||||
echo "## ⚙️ App Settings" >> $OUTPUT_FILE
|
||||
echo '```json' >> $OUTPUT_FILE
|
||||
psql -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -t -c "
|
||||
SELECT json_agg(t) FROM (
|
||||
SELECT key, value
|
||||
FROM app_settings
|
||||
) t;" 2>/dev/null >> $OUTPUT_FILE
|
||||
echo '```' >> $OUTPUT_FILE
|
||||
echo "" >> $OUTPUT_FILE
|
||||
|
||||
echo "---" >> $OUTPUT_FILE
|
||||
echo "" >> $OUTPUT_FILE
|
||||
echo "_Bu dosya \`scripts/export-db-samples.sh\` tarafından oluşturulmuştur._" >> $OUTPUT_FILE
|
||||
|
||||
echo "✅ Export tamamlandı: $OUTPUT_FILE"
|
||||
Reference in New Issue
Block a user