심플라이프
10
2019-08-29 09:54:11
0
298

Django raw query 질문(oracle11g)


안녕하세요. C#개발을 하다가 이번에 Django를 이용하여 웹레포트 프로그램을 개발하게 되었습니다. 기존의 웹 레포트 프로그램을 Django로 구현하려고 하는데, 오라클 db에 접속하여 raw쿼리를 작성할 때, ORM을 이용하여 RAW쿼리를 작성하면 데이터를 불러오는데, connection.cursor()를 이용하여 쿼리를 작성하면 데이터를 불러오지 못하고 있습니다. 고수분들 도움 부탁드립니다. 

그리고 Django에서는 복잡한 SQL관리를 어떻게 하나요? 쿼리관리하는 py파일을 추가해서 쿼리를 소스에 관리하는지, 외부 프로그램에서 관리하는지 궁금합니다.


#ORM을 이용한 RAW 쿼리 : DB데이터를 화면에 잘 불러옵니다. 

class UserList(ListView):

  query = 'select user_id, user_name from user'

  queryset = USER.objects.raw(query)

  context_object_name = 'user_list'

  template_name = 'user_list.html'


#Connection.cursor() 를 이용한 RAW 쿼리 : 에러없이 화면은 보이는데, DB에서 데이터를 불러오지 못합니다. 

class UserList(ListView):

  with connection.cursor() as cursor:

    cursor.execute('select user_id, user_name from user')

    queryset = cursor.fetchall()

    context_object_name = 'user_list'

    template_name = 'user_list.html'


#user_list.html

<h2>사용자 리스트(ListView Sample)</h2>
<table border="1" align="center">
<tr>
<th scope="col">사용자 ID</th>
<th scope="col">사용자명</th>
</tr>
{% for user in user_list %}
<tr>
<th width="200"><a href="http://127.0.0.1:8000/sec/userlist/{{ user.id }}/">{{ user.user_id }}</a></th>
<th width="200">{{ user.user_name }}</th>
</tr>
{% endfor %}
</table>


0
0
  • 답변 0

  • 로그인을 하시면 답변을 등록할 수 있습니다.