Opened 13 years ago

Closed 13 years ago

#1246 closed defect (invalid)

MythTV UTF-8 for 'Custom Record' query

Reported by: Cougar <cougar@…> Owned by: Isaac Richards
Priority: minor Milestone: unknown
Component: mythtv Version:
Severity: medium Keywords: SQL UTF-8
Cc: Ticket locked: no

Description

mythfrontend [8904] (almost latest). Found that when I have show where title has international characters in UTF-8 like Pealtnägija. then when I enter query title = 'Pealtnägija.' I don't get any result. I think this is not a case for title but any MySQL query in mythtv.

Here is result from mysql command line:

mysql> SELECT starttime,title FROM `program` where title = 'Pealtnägija.' and chanid = 1001;
+---------------------+---------------+
| starttime           | title         |
+---------------------+---------------+
| 2006-02-11 11:00:00 | Pealtnägija. |
| 2006-02-08 20:05:00 | Pealtnägija. |
+---------------------+---------------+

Here is what mythfrontend does (-v database):

sending IMStart with 0 chars to 0x8271d88
sending IMEnd with 1 chars to 0x8271d88, text=ä
receiving IMEnd with 1 chars
2006-02-08 23:07:32.470 MSqlQuery: SELECT NULL FROM program,channel  WHERE
title = 'Pealtn�ija.'
2006-02-08 23:07:32.789 MSqlQuery: SELECT DISTINCT program.chanid, program.starttime, program.endtime,     program.title, program.subtitle, program.description,     program.category, channel.channum, channel.callsign,     channel.name, program.previouslyshown, channel.commfree,     channel.outputfilters, program.seriesid, program.programid,     program.airdate, program.stars, program.originalairdate,     program.category_type, oldrecstatus.recordid,     oldrecstatus.rectype, oldrecstatus.recstatus,     oldrecstatus.findid FROM program LEFT JOIN channel ON program.chanid = channel.chanid LEFT JOIN oldrecorded AS oldrecstatus ON     program.title = oldrecstatus.title AND     channel.callsign = oldrecstatus.station AND     program.starttime = oldrecstatus.starttime WHERE channel.visible = 1   AND program.endtime > '2006-02-08T23:07:50'   AND ( title = 'Pealtnägija.' )  GROUP BY program.starttime, channel.channum,   channel.callsign, program.title  ORDER BY program.starttime, channum + 0  LIMIT 1000
2006-02-08 23:07:32.791 DB Error (ProgramList::FromProgram):
Query was:
SELECT DISTINCT program.chanid, program.starttime, program.endtime,     program.title, program.subtitle, program.description,     program.category, channel.channum, channel.callsign,     channel.name, program.previouslyshown, channel.commfree,     channel.outputfilters, program.seriesid, program.programid,     program.airdate, program.stars, program.originalairdate,     program.category_type, oldrecstatus.recordid,     oldrecstatus.rectype, oldrecstatus.recstatus,     oldrecstatus.findid FROM program LEFT JOIN channel ON program.chanid = channel.chanid LEFT JOIN oldrecorded AS oldrecstatus ON     program.title = oldrecstatus.title AND     channel.callsign = oldrecstatus.station AND     program.starttime = oldrecstatus.starttime WHERE channel.visible = 1   AND program.endtime > '2006-02-08T23:07:50'   AND ( title = 'Pealtnägija.' )  GROUP BY program.starttime, channel.channum,   channel.callsign, program.title  ORDER BY program.starttime, channum + 0  LIMIT 1000
Driver error was [2/1052]:
QMYSQL3: Unable to execute query
Database error was:
Column 'title' in where clause is ambiguous

First ä in sending IMEnd with 1 chars to 0x8271d88, text=ä is UTF-8 character (t e x t = 303 244 \n)

Next one is something very strange. title = 'Pealtn�ija.' isn't UTF-8 nor Latin (P e a l t n 357 277 275 i j a).

The query itself as it is reported uses right UTF-8 character again: ...( title = 'Pealtnägija.' )... . But still fails.

In environment I have LANG=en_US.UTF-8

Anything I can do to use international characters or does MythTV need some more encancement for that?

Change History (1)

comment:1 Changed 13 years ago by bjm

Resolution: invalid
Status: newclosed

User didn't read the error message.

Note: See TracTickets for help on using tickets.